https://school.programmers.co.kr/learn/courses/30/lessons/181188?language=cpp
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
* 풀이
- 끝점기준 정렬
- 끝점에서 미사일발사
- 안되는경우( missile <= new_start ), 새로 미사일 발사, 미사일위치갱신
#include <bits/stdc++.h>
using namespace std;
bool cmp(vector<int> v1, vector<int> v2){
return v1[1] < v2[1];
}
int solution(vector<vector<int>> targets) {
int ret = 1; // 첫 미사일
int n = targets.size();
sort(targets.begin(), targets.end(), cmp);
int missile = targets[0][1]; // 첫 요격 지점
for(int i = 1; i < n; ++i) {
if(targets[i][0] >= missile) { // 현재 미사일이 이전 요격 범위를 벗어난 경우
missile = targets[i][1]; // 새로운 요격 지점
ret++;
}
}
return ret;
}
'Algorithm > greedy' 카테고리의 다른 글
[알고리즘, 틀림] 백준 1700 멀티탭 스케쥴링 // 그리디, 페이지 교체 알고리즘 (0) | 2025.02.01 |
---|---|
[알고리즘] 백준 1202 보석도둑 // 그리디, pq (0) | 2025.01.29 |
[알고리즘] 백준 1931 회의실 배정 // 그리디, 라인스위핑, 정렬 (0) | 2025.01.28 |
[알고리즘] 백준 14469 // 그리디, 라인스위핑은 막대기를 그려라 (0) | 2025.01.28 |
[알고리즘] 백준 1787 컵라면 // 그리디 , pq (0) | 2025.01.27 |