BC-Round3 hdu4907

来源:互联网 发布:犀牛软件分解模型 编辑:程序博客网 时间:2024/06/07 03:11

    Hdu 4907

    题目链接:点击打开链接

        第一遍的时候AC了感觉自己萌萌哒。。结果最后判的时候TLE。在HACK的时候看到别人的代码里有优化顿时恍然大悟,还是需要预处理的。。。果然还是太年轻了。。后来在群里讨论的时候有人说是哈希表,其实还是挺容易的。早上一遍敲完了。


#include<stdio.h>#include<string.h>bool flag[400005];int ans[400005];int main(){int t,n,m;int max;int c;int temp;while(scanf("%d",&t)!=EOF){while(t--){memset(flag,0,sizeof(flag));scanf("%d%d",&n,&m);int i;max=0;for(i=0;i<n;++i){scanf("%d",&c);flag[c]=1;if(c>max)max=c;}temp=max+1;for(i=max;i>0;--i){if(!flag[i])temp=i;ans[i]=temp;}for(i=0;i<m;++i){scanf("%d",&c);if(c>max)printf("%d\n",c);elseprintf("%d\n",ans[c]);}}}return 0;}


0 0