본인 풀이
pcce 대비중인데, 실전을 대비해 검색하지 않고 풀었다. for문 사용하지 않고 풀어도 됐을 건데 머리쓰기 귀찮았다,,,ㅎ
stream으로 풀었다.
import java.util.stream.*;
class Solution {
public int solution(int a, int d, boolean[] included) {
int answer = 0;
int []arr = new int[included.length];
arr[0] = a;
for(int i = 1; i<arr.length; i++){
arr[i] = arr[i-1] + d;
}
answer = IntStream.range(0, arr.length)
.filter(i -> included[i])
.map(i -> arr[i])
.sum();
return answer;
}
}
다른 분 풀이
정석 풀이는 다음과 같다.
class Solution {
public int solution(int a, int d, boolean[] included) {
int answer = 0;
for(int i = 0; i < included.length; i++){
if(included[i]){
answer += a + (d*i);
}
}
return answer;
}
}
'코딩테스트 > Programmers' 카테고리의 다른 글
[프로그래머스] PCCE 기출문제 10번 / 데이터 분석 (0) | 2025.01.26 |
---|---|
[프로그래머스] PCCE 기출문제 10번 / 공원 (0) | 2025.01.26 |
[프로그래머스] 두 수의 합 (0) | 2025.01.23 |
[프로그래머스] 무작위로 K개의 수 뽑기 (0) | 2025.01.23 |
정사각형으로 만들기 (0) | 2025.01.23 |