改了下老师的代码,发现不对......
代码
#include<bits/stdc++.h>
using namespace std;
#define aaa 2000005
int dp[aaa];
int n,maxx=0;
struct city{
int x,y;
}in[aaa];
bool cmp(city a,city b)
{
return a.x<a.y;
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
cin>>in[i].x>>in[i].y;
sort(in+1,in+n+1,cmp);
for(int i=1;i<=n;i++)
{
dp[i]=1;
for(int j=1;j<=i;j++)
if(in[i].x>in[j].x&&in[i].y>in[j].y&&dp[i]<dp[j]+1)
dp[i]=dp[j]+1;
maxx=max(maxx,dp[i]);
}
cout<<maxx;
return 0;
}