将存储位置与数据本身对应起来的存储手段就是Hash。
本题相对于上一题就很简单了。思路很巧妙 运用hash数组 存放每一个分数的人数,最后直接输出数组中某下标对应分数的值就可以了。
#include<stdio.h>
int main(){
int n;
while(scanf("%d",&n)!=EOF&&n!=0){
int Hash[101]={0};
for(int i=1;i<n;i++){
int x;
scanf("%d",&x);
Hash[x]++;
}
int x;
scanf("%d",&x);
printf("%d\n",Hash[x]);
}
return 0;
}