문제 설명
A나라가 B를 침략하기 위해 [s,e]까지 피해를 줄 수있는 미사일을 발포한다.
B나라는 이 사실을 알고 A나라에서 발포한 미사일을 모두 격추 시키려 할 때, 최소한의 개수로 미사일을 격파시킬 수 있는 개수를 구하는 문제이다.
해당 문제는 한 점에서 최대 격추시킬 수 있는 미사일의 개수를 구하는 것이 핵심이다.
풀이
public int solution(int[][] targets) {
Arrays.sort(targets,(a,b)-> {
if(a[0] == b[0]){
return a[1]-b[1];
}
return a[0] - b[0];
});
int answer=1;
int end=targets[0][1];
for(int i=1; i<targets.length; i++){
int nextStart=targets[i][0];
int nextEnd=targets[i][1];
if(nextStart<end){
end=Math.min(end,nextEnd);
continue;
}
answer++;
end=nextEnd;
}
return answer;
}
'Algorithm > 프로그래머스' 카테고리의 다른 글
백준 - 파일 합치기3 (0) | 2023.06.09 |
---|---|
프로그래머스 - 과제 수행하기 (0) | 2023.06.08 |
프로그래머스 - 방의 개수 (0) | 2023.04.25 |
프로그래머스 - N으로 표현 (0) | 2023.04.21 |
프로그래머스 - 퍼즐조각 맞추기 (0) | 2023.04.17 |
댓글