刚看到这题,直接就想定个map不就OK了吗?于是很快有了以下代码:
#include <stdio.h>
int map[111]={0};
int main(){
int n;
int i;
int index;
int score;
while(scanf("%d",&n)!=EOF){
if(n==0) break;
for(i=0;i<n;i++){
scanf("%d",&index);
map[index]++;
}
scanf("%d",&score);
printf("%d\n",map[score]) ;
}
return 0;
}
提交后居然WA,“卧槽,这是什么鬼情况。”自己想来想去实在发现不了问题,于是百度下看看别人怎么解决的。发现大家都是先把每组用例的成绩存到一个数组中,然后再遍历一遍数组找值等于给定的那个,改成了这个样子:
#include<stdio.h>
int num[1001];
int main()
{
int n;
int i;
int score;
while(scanf("%d",&n)!=EOF)
{
if(n==0) return 0;
for(i=0;i<n;++