http://acm.hdu.edu.cn/showproblem.php?pid=260
开始一直超时!把n==1的判断条件放在sort外面了!!!
#include<stdio.h>
#include<algorithm>
using namespace std;
struct war
{
int begin;
int end;
char str[100];
}z[107];
bool cmp(war a,war b)
{
return a.end<b.end;
}
int main()
{
int n,i;
while(scanf("%d",&n)!=EOF&&n)
{
int star,ends,t;
scanf("%d%d",&star,&ends);
for(i=0;i<n;i++)
{
scanf("%d%d",&z[i].begin,&z[i].end);
gets(z[i].str);
}
sort(z,z+n,cmp);
int m=z[n-1].end;
if(m<ends)
{
printf("%d\n",ends);
}
else
{
for(i=n-1;i>=1;i--)
if(z[i].begin>z[i-1].end)
{
printf("%d\n",z[i].begin-1);
}
if(n==1)
{
if(z[0].begin>star)
printf("%d\n",z[i].begin-1);
else
printf("Badly!\n");
}
}
}
return 0;
}