[JAVA 문제 풀이] 159. 수열과 구간 쿼리 1

프로그래머스 (181883)
Stupefyee's avatar
Mar 26, 2025
[JAVA 문제 풀이] 159. 수열과 구간 쿼리 1
notion image
 

내가 작성한 코드 1 (반복문 버전)

class Solution { public int[] solution(int[] arr, int[][] queries) { for(int[] query : queries){ int start = query[0]; // 시작점 int end = query[1]; // 끝점 // 시작점부터 끝점까지 순환하며 1씩증가 for(int j = start; j <= end; j++){ arr[j]++; } } return arr; } }
 

내가 작성한 코드 2 (스트림 버전)

import java.util.stream.IntStream; class Solution { public int[] solution(int[] arr, int[][] queries) { // 각 쿼리를 처리 IntStream.range(0, queries.length).forEach(i -> { int start = queries[i][0]; int end = queries[i][1]; // start부터 end까지의 인덱스를 순회하며 값을 증가 IntStream.rangeClosed(start, end).forEach(j -> arr[j]++); }); return arr; } }
 
Share article

stupefyee