会员
周边
众包
新闻
博问
闪存
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
c语言源码
poj 4044
很水,但还是WA了好几次
#include<cstdio> #include<string.h> #include<algorithm> using namespace std; int cmp(int a,int b){ return a>b; } int cmp2(int a,int b){ if(a%10==b%10) return a<b; return a%10<b%10; } int n,m; int dp[31]; int main(){ int i,j,t,T,a,b,x[31],y[31]; //freopen("1.in","r",stdin); //freopen("2.out","w",stdout); scanf("%d",&T); for(t=1;t<=T;t++){ scanf("%d %d",&a,&b); for(i=1;i<=a;i++) scanf("%d",&x[i]); for(i=1;i<=b;i++) scanf("%d",&y[i]); sort(x+1,x+a+1,cmp); sort(y+1,y+b+1,cmp); int aa=unique(x+1,x+a+1)-x-1; int bb=unique(y+1,y+b+1)-y-1; memset(dp,0,sizeof(dp)); int ans=0,pos; for(i=1;i<=aa;i++) for(j=bb;j>=1;j--){ if(x[i]==y[j]){ dp[j]=dp[j-1]+1; if(dp[j]>ans){ ans=dp[j]; pos=j-ans+1; } else if(dp[j]==ans){ if(y[pos]<y[j-ans+1]) pos=j-ans+1; } } else dp[j]=0; //我在这里WA死了 } if(ans==0){ printf("NONE\n"); continue; } for(i=pos;i<=pos+ans-1;i++) printf("%d ",y[i]); printf("\n"); sort(y+pos,y+pos+ans,cmp2); for(i=pos;i<=pos+ans-1;i++) printf("%d ",y[i]); printf("\n"); } }
posted on
2012-05-13 00:15
c语言源码
阅读(
149
) 评论(
0
)
编辑
收藏
举报
会员力量,点亮园子希望
刷新页面
返回顶部
导航
博客园
首页
新随笔
联系
订阅
管理
公告