有n个矩形,每个矩形可以用a,b来描述,表示长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a

. #include
02. #include
03. #include
04. using namespace std;
05. struct stu
06. {
07. int a,b;
08. }s[1020];
09. int dp[1020];
10. int cmp(stu x,stu y)
11. {
12. if(x.a
13. return 1;
14. else if(x.a==y.a&&x.b
15. return 1;
16. else
17. return 0;
18. }
19. int main()
20. {
21. int t,i;
22. scanf("%d",&t);
23. while(t--)
24. {
25. int n,j,ans;
26. scanf("%d",&n);
27. for(i=0;i
28. {
29. scanf("%d%d",&s[i].a,&s[i].b);
30. if(s[i].a
31. swap(s[i].a,s[i].b);
32. }
33. sort(s,s+n,cmp);
34. ans=0;
35. for(i=0;i
36. {
37. dp[i]=1;
38. for(j=0;j
39. {
40. if(s[j].a
41. dp[i]=max(dp[i],dp[j]+1);
42. }
43. ans=max(ans,dp[i]);
44. }
45. printf("%d\n",ans);
46. }
47. return 0;
48. }

你可能感兴趣的:(动态规划)