정수 배열 arr와 2개의 구간이 담긴 배열 intervals가 주어집니다. intervals는 항상 [[a1, b1], [a2, b2]]의 꼴로 주어지며 각 구간은 닫힌 구간입니다. 닫힌 구간은 양 끝값과 그 사이의 값을 모두 포함하는 구간을 의미합니다. 이때 배열 arr의 첫 번째 구간에 해당하는 배열과 두 번째 구간에 해당하는 배열을 앞뒤로 붙여 새로운 배열을 만들어 return 하는 solution 함수를 완성해 주세요.
class Solution {
public int[] solution(int[] arr, int[][] intervals) {
int[] answer = new int[intervals[0][1]-intervals[0][0]+intervals[1][1]-intervals[1][0]+2];
int b=intervals[0][0];
int c=intervals[1][0];
for(int i=0; i<answer.length;i++){
if(i<intervals[0][1]-intervals[0][0]+1){
answer[i]=arr[b];
b++;}
else{
answer[i]=arr[c];
c++;
}
}
return answer;
}
}
첫 세팅에 변수 2개를 각각 intervals 배열에 첫 숫자로 설정해주고
for 문에서 답변배열에 그 변수에 숫자부터 넣어지게 하고 또 다음 순서에도
똑같이 그 변수부터 숫자가 넣어지게 하면 된다.!!
끝!!
'자바 알고리즘 문제' 카테고리의 다른 글
| 문자열 돌리기 (0) | 2023.11.03 |
|---|---|
| 수 조작하기 2 (0) | 2023.11.03 |
| 피자 나눠 먹기 (2) (1) | 2023.11.02 |
| 문자 리스트를 문자열로 변환하기 (0) | 2023.11.01 |
| 접미사 배열 (0) | 2023.10.31 |