題目信息
本題要求讀入N名學(xué)生的成績,將獲得某一給定分?jǐn)?shù)的學(xué)生人數(shù)輸出。
輸入格式:
輸入在第1行給出不超過105的正整數(shù)N,即學(xué)生總?cè)藬?shù)接癌。隨后1行給出N名學(xué)生的百分制整數(shù)成績,中間以空格分隔扣讼。最后1行給出要查詢的分?jǐn)?shù)個(gè)數(shù)K(不超過N的正整數(shù))缺猛,隨后是K個(gè)分?jǐn)?shù),中間以空格分隔。
輸出格式:
在一行中按查詢順序給出得分等于指定分?jǐn)?shù)的學(xué)生人數(shù)荔燎,中間以空格分隔耻姥,但行末不得有多余空格。
輸入樣例:
10
60 75 90 55 75 99 82 90 75 50
3 75 90 88
輸出樣例:
3 2 0
這題我竟然還二分查找有咨,直接用一個(gè)數(shù)組充當(dāng)簡單哈希表即可琐簇。
代碼
#include<stdio.h>
int main(){
int n,grade,s;
int a[101]={0};
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%d",&grade);
a[grade]++;
}
scanf("%d",&s);
for(int i=0;i<s-1;i++){
scanf("%d",&grade);
printf("%d ",a[grade]);
}
scanf("%d",&grade);
printf("%d",a[grade]);
return 0;
}