uva 10474 Where is the Marble?(大理石在哪儿)

来源:互联网 发布:财务自由之路 知乎 编辑:程序博客网 时间:2024/05/01 07:02

题目大意:

有n个大理石,每个大理石上写一个非负整数,首先把各数按照从小到大排序,问Q个问题每个问题问是否一个大理石写着一个数X,如果有,回答那个大理石写着X。

题解:

就排序查找就行,我觉得二分更快,懒得写0.0,

#include<stdio.h>#include<algorithm>using namespace std;const int maxn=10000000;int a[maxn];int main(){int x,y;int T=1;while(~scanf("%d%d",&x,&y)&&x&&y){        printf("CASE# %d:\n",T++);for(int i=0;i<x;i++){scanf("%d",&a[i]);}sort(a,a+x);for(int i=0;i<y;i++){            int flag=0;int t;scanf("%d",&t);int j;for(j=0;j<x;j++){if(a[j]==t){                    printf("%d found at %d\n",t,j+1);                    flag=1;                    break;}}if(flag==0) printf("%d not found\n",t);}}return 0;}




0 0