由于最后写在纸上的day number(ai)是不下降的,所以按规定时间(ai)排序的exam序列就是实际参加的考试顺序.
在这一点的基础上,尽量让先参加的考试天数小(尽量取候选时间bi)
#include <cstdio>
#include <algorithm>
using namespace std;
#define N 5005
struct Node{
int a, b;
friend bool operator< (const Node& e1, const Node& e2){
if(e1.a != e2.a)
return e1.a < e2.a;
else
return e1.b < e2.b;
}
}exams[N];
int main(){
int n;
scanf("%d", &n);
for(int i = 0; i < n; i ++)
scanf("%d %d", &exams[i].a, &exams[i].b);
sort(exams, exams + n);
int day = exams[0].b;
for(int i = 1; i < n; i ++){
if(exams[i].b < day)
day = exams[i].a;
else
day = exams[i].b;
}
printf("%d\n", day);
return 0;
}