uva 10474 Where is the Marble?

本来这道题目我用了哈希查找,但是最后发现超时了,所以就再次用快排来做喽,很简单

代码很容易就看明白

View Code
 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 //快排的库函数,不过如果对快排掌握的不是很熟练,建议自己写,联系一下,毕竟不是所有的程序,都可以调用快排
 4 int cmp ( const void *a , const void *b )
 5 {
 6     return *(int *)a - *(int *)b;
 7 }
 8 int main()
 9 {
10     int m, n, f[10000], T = 1;
11     while(scanf("%d%d",&m,&n) && (m||n))
12     {
13         int i, k;
14         for(i = 0;i < m; i++)
15             scanf("%d",&f[i]);
16         //快排调用
17         qsort(f,m,sizeof(f[0]),cmp);
18         printf("CASE# %d:\n",T++);
19         while(n--)
20         {
21             scanf("%d",&k);
22             for(i = 0;i < m; i++)
23             {
24                 if(f[i] == k)
25                 {
26                     printf("%d found at %d\n",k,i+1);
27                     break;
28                 }
29             }
30             if(i == m)
31                 printf("%d not found\n",k);
32         }
33     }
34     return 0;
35 }
原文地址:https://www.cnblogs.com/SDUTYST/p/2532231.html