#include <string>
#include <vector>
#include <algorithm>
using namespace std;
vector<int> solution(int n) {
vector<int> answer;
sort(answer.begin(), answer.end());
for (int i = 0; answer.size(); i++) {
answer[i]= 2 * i +1;
}
return answer;
}
처음에 너무 생각없이 헤더를 사용했고, 벡터를 쓸 생각없이 그냥 홀수를 구하는 식으로 코드를 전개했다.
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
vector<int> solution(int n) {
vector<int> answer;
for (int i = 0; i <= n; i++)
{
if (i % 2 == 1) {
answer.push_back(i);
}
}
return answer;
}
내가 너무 복잡하게 생각한 것 같다. 그냥 2로 나누었을 경우의 나머지가 1일 때, 즉 홀수인 경우에 answer 벡터에 원소 i를 push_back()만 하면 문제가 쉽게 해결됐다. vector와 각 메서드들에 다시 정리해야겠다.