728x90
반응형
문제를 이해하는것도 한참걸렸다.
#include <iostream>
#include<vector>
#include <algorithm>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cout.tie(0);
cin.tie(0);
int n;
cin >> n;
vector<pair<int, int>>time(n);
int savetime = 0; int cnt = 0;
for (int i = 0; i < n;i++)
cin >> time[i].second >> time[i].first;
sort(time.begin(), time.end());
for (int i = 0; i < n; i++) {
if (savetime<=time[i].second) {
savetime = time[i].first;
cnt++;
}
}
cout << cnt;
}
이것 역시 다른 블로그의 이해가 쉬운 답을 보고 이해하고 작성했다.
끝나는 시간을 기준으로 정렬을 하고 가장 빨리 끝나는 시간대를 기준으로 정렬된 순서대로 시작시간이 크거나 같으면 savetime을 초기화 해준다.
728x90
반응형
'알고리즘 연습' 카테고리의 다른 글
C++ 1977 완전제곱수 (0) | 2021.10.11 |
---|---|
C++ 1541 잃어버린 괄호 (0) | 2021.10.07 |
C++ 11047 동전0 (그리디알고리즘) (0) | 2021.10.06 |
C++ 11650 좌표 정렬하기 (1) | 2021.10.01 |
C++ 1427 소트 인사이드 (0) | 2021.09.30 |