UVA 10474 - Where is the Marble?
题目大意:给出一串数,给出要找的数,问要找的数在原先给出的数中第几大,并列的也参与
解题思路:排序后找遍历一遍这个数组,然后看看要找的数在不在这个数组里,找到了输出位置最小的那个数
#include<cstdio>
#include<cstring>
#include<algorithm>
int list[10000];
int cmp(const void*a,const void *b)
{
return *(int*)a-*(int*)b;
}
int main(){
int cases=1;
int a,b;
int fou;
while(scanf("%d%d",&a,&b)&&a)
{
printf("CASE# %d:\n",cases++);
memset(list,0,sizeof(list));
for(int i = 0 ;i < a;i++)
scanf("%d",&list[i]);
qsort(list,a,4,cmp);
for(int i=0;i<b ;i++){
scanf("%d",&fou);
for(int i=0;i<a ;i++)
{
if(list[i]==fou)
{
printf("%d found at %d\n",fou,i+1);
break;
}
if(i==a-1)
printf("%d not found\n",fou);
}
}
}
return 0;
}