1263:【例9.7】友好城市
1 #include<iostream> 2 #include<cstdio> 3 #include<algorithm> 4 using namespace std; 5 const int N=5005; 6 7 struct sn{ 8 int s,n; 9 }; 10 sn r[N]; 11 int cmp(sn x,sn y){ 12 return x.n<y.n; 13 } 14 int f[N]; 15 int main(){ 16 int n,maxx=0; 17 cin>>n; 18 for(int i=1;i<=n;i++) 19 scanf("%d%d",&r[i].s,&r[i].n); 20 sort(r+1,r+n+1,cmp); 21 for(int i=1;i<=n;i++){ 22 f[i]=1; 23 for(int j=i-1;j>0;j--){ 24 if(r[j].s<r[i].s&&f[i]<f[j]+1) 25 f[i]=f[j]+1; 26 } 27 maxx=max(maxx,f[i]); 28 } 29 printf("%d",maxx); 30 return 0; 31 }