728x90
반응형
문제 설명
정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요.
제한사항
- 0 < n ≤ 1000
입출력 예
n | result |
10 | 30 |
4 | 6 |
입출력 예 #1
- n이 10이므로 2 + 4 + 6 + 8 + 10 = 30을 return 합니다.
입출력 예 #2
- n이 4이므로 2 + 4 = 6을 return 합니다.
[나의 풀이]
class Solution {
public int solution(int n) {
int answer = 0;
for (int i = 0; i <= n; i+=2) {
answer += i;
}
return answer;
}
}
[풀이과정]
설명 불필요
[다른 풀이]
class Solution {
public int solution(int n) {
return IntStream.rangeClosed(0, n)
.filter(e -> e % 2 == 0)
.sum();
}
}
IntStream의 rangeClosed는 arg1부터 arg2-1까지의 범위만큼 반복한 객체를 갖는다.
이후 filter를 통해 짝수인 값들에 해당하는 값을 수집하고
해당 수집된 값들을 sum()함수를 통해 누적합을 구한다.
728x90
반응형
'코딩테스트 - 프로그래머스 > Lv. 0' 카테고리의 다른 글
[32] JAVA 양꼬치 (0) | 2023.11.16 |
---|---|
[31] JAVA 배열의 평균 값 (0) | 2023.11.16 |
[29] JAVA 각도기 (0) | 2023.11.16 |
[28] JAVA 두 수의 나눗셈 (0) | 2023.11.16 |
[27] JAVA 두 수의 합 (0) | 2023.11.16 |