UVA - 10474 Where is the Marble?
题目大意:给出一组数字和一组问题,将数字按升序排列后,求每个问题第一次出现的位置。
解题思路:所见即所得,和题目大意一致。
#include<cstdio>
#include<cstring>
#include<algorithm>
int main() {
int c=0, n, q, num[10005],que[10005];
while( scanf("%d%d",&n,&q),n||q) {
memset( num , 0 ,sizeof(num));
memset( que , 0 ,sizeof(que));
c++;
int i;
for( i = 0; i < n; i++)
scanf("%d",&num[i]);
for( i = 0; i < q; i++)
scanf("%d",&que[i]);
std::sort( num, num + n);
printf("CASE# %d:\n",c);
for(int j = 0; j < q ; j++ ) {
for( i = 0; i < n ; i++ ) {
if( que[j] == num[i] ) {
printf("%d found at %d\n",que[j],i+1);
break;
}
}
if( i==n) printf("%d not found\n",que[j]);
}
}
return 0;
}
本文提供了一道UVA在线评测系统中编号为10474的编程题解题思路及代码实现。该题要求对一组数字进行排序后,找出特定数字首次出现的位置。
471

被折叠的 条评论
为什么被折叠?



