Contents
정답 : 문제 설명
정수
n
이 매개변수로 주어질 때, n
이하의 홀수가 오름차순으로 담긴 배열을 return하도록 solution 함수를 완성해주세요.제한사항
- 1 ≤
n
≤ 100
입출력 예
n | result |
10 | [1, 3, 5, 7, 9] |
15 | [1, 3, 5, 7, 9, 11, 13, 15] |
입출력 예 설명
입출력 #1
- 10 이하의 홀수가 담긴 배열 [1, 3, 5, 7, 9]를 return합니다.
입출력 #1
- 15 이하의 홀수가 담긴 배열 [1, 3, 5, 7, 9, 11, 13, 15]를 return합니다.
기본적으로 주어진 코드 :
class Solution {
public int[] solution(int n) {
int[] answer = {};
return answer;
}
}
정답 :
import java.util.Arrays;
class Solution {
public int[] solution(int n) {
int[] answer = {};
for (int i = n; i > 0; i--) {
if (i % 2 != 0) {
answer = Arrays.copyOf(answer, answer.length + 1);
answer[answer.length - 1] = i;
}
}
Arrays.sort(answer);
return answer;
}
}
홀수 찾기
for (int i = n; i > 0; i--)
는n
부터 1까지 반복합니다.
if (i % 2 != 0)
조건문을 사용하여i
가 홀수인지 확인합니다.- 홀수라면:
answer
배열의 길이를 1 늘려서 새로운 배열을 생성하고, 기존 배열의 값을 복사합니다 (Arrays.copyOf(answer, answer.length + 1)
).- 마지막 인덱스에 현재 홀수
i
를 저장합니다 (answer[answer.length - 1] = i
).
3. 정렬
Arrays.sort(answer);
를 사용하여 배열answer
를 오름차순으로 정렬합니다.
굳이 정렬을 한번 한 이유?

- 그대로 반환했더니 배열 원소의 값을 오름차순으로 만들어야 하는 조건을 발견하였고, 정답 의도대로 배열 정렬을 진행하였습니다.
Share article