[C++]BOJ 1931 - 회의실배정

[C++]BOJ 1931 - 회의실배정

회의가 끝나는 시간이 빠른 회의 순으로 정렬 후 이전 회의의 끝나는 시간과 현재 회의가 시작하는 시간의 조건을 만족시키면 회의 수를 +1 한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <algorithm>
using namespace std;
typedef pair<int, int> p;
int main()
{
int a;
cin >> a;
p b[100001];
for(int i = 0; i < a; i++)
{
cin >> b[i].second >> b[i].first;
}
sort(b, b+a);
int c = 1;
int l = b[0].first;
for(int i = 1; i < a; i++)
{
if(b[i].second >= l)
{
l = b[i].first;
c++;
}
}
cout << c;
}

이 문제 풀다가 pair를 발견했다. 쓸모가 많을 듯 하다.
pair를 sort시키면 first기준으로 정렬한다는 점.