🎁 링크
https://school.programmers.co.kr/learn/courses/30/lessons/120813
🎁 문제 설명
정수 n이 매개변수로 주어질 때, n 이하의 홀수가 오름차순으로 담긴 배열을 return하도록 solution 함수를 완성해주세요.
🎁 입출력 예시
n | result |
10 | [1, 3, 5, 7, 9] |
15 | [1, 3, 5, 7, 9, 11, 13, 15] |
🎁 코드 설명
1) n이라는 매개변수의 값을 넣으면 해당 값에서 홀수만 배열에 넣어서 도출하는 문제이다.
2) n에서 홀수가 몇 개인지 1차적으로 계산한다.(count)
3) 해당 값을 가지고 배열을 만들고, 0으로 변환시킨다(배열에 0번부터 넣기 위해)
4) 다시 n의 배열 인덱스만큼 홀수를 추출해서 [count]의 배열에 삽입한다.
🎁 코드
class Solution {
public int[] solution(int n) {
int count = 0;
for (int i = 0; i <= n; i++) {
if(i % 2 != 0){
count++;
}
}
int[] answer = new int[count];
count = 0;
for (int i = 0; i <= n; i++) {
if(i % 2 != 0){
answer[count] = i;
count++;
}
}
return answer;
}
}
🎁 다른 코드(IntStream 사용)
import java.util.stream.IntStream;
class Solution {
public int[] solution(int n) {
return IntStream.rangeClosed(0, n).filter(value -> value % 2 == 1).toArray();
}
}
반응형
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 숫자 문자열과 영단어 [Java] (0) | 2023.08.14 |
---|---|
[프로그래머스] n보다 커질 때까지 더하기 (0) | 2023.08.12 |
[프로그래머스] 완주하지 못한 선수 (0) | 2023.08.11 |
댓글