标签:style blog io color os sp for div on
1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 using namespace std; 5 6 const int maxn=505; 7 int a[maxn],b[maxn],dp[maxn]; 8 9 int main() 10 { 11 int t,n,m,i,j,k; 12 scanf("%d",&t); 13 while(t--) 14 { 15 scanf("%d",&n); 16 for(i=1;i<=n;i++) scanf("%d",a+i); 17 scanf("%d",&m); 18 for(i=1;i<=m;i++) scanf("%d",b+i); 19 memset(dp,0,sizeof(dp)); 20 for(i=1;i<=n;i++) 21 { 22 k=0; 23 for(j=1;j<=m;j++) 24 { 25 //当前要比较的数值为a[i],所以我们寻找b[j]中比a[i]小,但dp[j]最大的值,找到了就用k记录位置 26 if(a[i]>b[j] && dp[j]>dp[k]) 27 k=j; 28 if(a[i]==b[j])//更新最大值 29 dp[j]=dp[k]+1; 30 } 31 } 32 int ans=0; 33 for(i=1;i<=m;i++) 34 ans=max(ans,dp[i]); 35 printf("%d\n",ans); 36 if(t) puts(""); 37 } 38 return 0; 39 }
标签:style blog io color os sp for div on
原文地址:http://www.cnblogs.com/xiong-/p/4104817.html