简单的sort排序
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
struct aa
{
int r,l;
};
aa a[1005],b[1005];
bool cmp(aa a,aa b)
{
if(a.r<b.r)return 1;
else if(a.r>b.r)return 0;
else if(a.r==b.r)
{
if(a.l<b.l)return 1;
else return 0;
}
}
int main()
{
int n,cnt=1;
while(~scanf("%d",&n)&&n)
{
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
for(int i=0;i<n;i++)
{
scanf("%d%d",&b[i].r,&b[i].l);
a[i].r=b[i].r;
a[i].l=b[i].l;
}
sort(b,b+n,cmp);
int flag=0;
printf("Case %d:\n",cnt++);
for(int i=0;i<n;i++)
{
flag=0;
for(int j=0;j<n;j++)
{
if(a[i].r<b[j].r&&a[i].l<b[j].l)
{
printf("%d %d\n",b[j].r,b[j].l);
flag=1;
break;
}
}
if(flag==0)printf("-1 -1\n");
}
printf("\n");
}
return 0;
}