据说是贪心加dp,其实就是贪心
#include#include #include #include using namespace std;const int maxn=5000+10;typedef pair pp;pp a[maxn];int t,n;int use[maxn];bool cmp1(pp x,pp y){ return (x.first<=y.first)||(x.first==y.first&&x.second<=y.second);}int main(){ scanf("%d",&t); while(t--) { memset(use,0,sizeof(use)); scanf("%d",&n); for(int i=0; i =ff&&!use[j]) { use[j]=1; ff=a[j].second;//更新最大值,也就是这个上升子序列的最后一个元素,不断更新 } ans++; } } printf("%d\n",ans); } return 0;}