코딩테스트 연습 - 단속카메라 | 프로그래머스 스쿨 (programmers.co.kr)
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
차가 고속도로에서 나간 지점에 대해 오름차순, 고속도로에 진입한 지점에 대해 내림차순으로 정렬한다.
고속도로에서 나간 지점에 대해 오름차순을 한 이유는 이 지점을 지나고 나면 이 차에 대해 단속 카메라를 설치할 수 없기 때문이다. 이후 이중 for문으로 이 지점에 단속카메라를 설치했을 때 범위에 걸리는지를 확인하면 된다.
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
bool compare(vector<int> a, vector<int> b) {
if (a[1] == b[1]) {
return a[0] > b[0];
}
else {
return a[1] < b[1];
}
}
int solution(vector<vector<int>> routes) {
int answer = 0;
sort(routes.begin(), routes.end(), compare);
for (int i = 0; i < routes.size(); i++) {
answer++;
int j = i + 1;
for (; j < routes.size(); j++) {
if (routes[j][0]>routes[i][1]) {
break;
}
}
i = j-1;
}
return answer;
}
'코딩테스트 > C++' 카테고리의 다른 글
[프로그래머스 Level 3] 기지국 설치(C++) (0) | 2024.06.26 |
---|---|
[프로그래머스 Level 3] 베스트앨범(C++) (0) | 2024.06.24 |
[프로그래머스 Level 3] 숫자 게임(C++) (0) | 2024.06.22 |
[프로그래머스 Level 3] 등굣길(C++) (0) | 2024.06.19 |
[프로그래머스 Level 3] 최고의 집합(C++) (1) | 2024.06.18 |