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

题目描述:算法竞赛入门经典例题5-1

 1 #include <iostream>
 2 #include <algorithm>
 3 using namespace std;
 4 int maxn = 10000 ;
 5 int main()
 6 {
 7     int n,q,a[maxn] ,k=0;
 8     while(scanf("%d%d",&n,&q)==2 && n &&q){
 9         for(int i=0;i<n;i++) scanf("%d",&a[i])    ;
10         printf("CASE# %d:\n",++k)    ;
11         sort(a,a+n);
12         while(q--){
13             int x;
14             scanf("%d",&x) ;
15             int p = lower_bound(a,a+n,x) - a;
16             if(a[p] == x) printf("%d found at %d\n",x,p+1) ;
17             else printf("%d not found\n",x) ;
18         }
19     } 
20     return 0;
21 }

猜你喜欢

转载自www.cnblogs.com/secoding/p/9490632.html