Notice
Recent Posts
Recent Comments
Link
할껀하고놀자
[백준] 1931번 회의실 배정 본문
728x90
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
class Meeting {
public:
int begin, end;
};
bool compare(const Meeting &u, const Meeting &v) {
if (u.end == v.end) {
return u.begin < v.begin;
}
else {
return u.end < v.end;
}
}
int main() {
int n;
cin >> n;
vector<Meeting> a(n);
for (int i = 0; i < n; i++) {
cin >> a[i].begin >> a[i].end;
}
sort(a.begin(), a.end(), compare);
int now = 0;
int ans = 0;
for (int i = 0; i < a.size(); i++) {
if (now <= a[i].begin) {
now = a[i].end;
ans += 1;
}
}
cout << ans << endl;
return 0;
}
왜 이렇게 풀었는지 아직 감이 잘 안잡힌다... 특히 for문 안의 내용이 감이 전혀 없다. now 가 작으면 end를 붙여주고 1개 더하라는게 무슨말일까
'[IT] > 백준' 카테고리의 다른 글
[백준] 10219번 Meats On The Grill (0) | 2019.06.08 |
---|---|
[백준] 2346번 풍선 터뜨리기 (0) | 2019.06.08 |
[백준] 1946번 신입사원 (0) | 2019.06.02 |
[백준] 1541번 잃어버린 괄호 (0) | 2019.06.01 |
[백준] 2217번 로프 (0) | 2019.06.01 |
Comments