【题解】PATB-1038 统计同成绩学生

统计同成绩学生 (PATB-1038)

题面

本题要求读入 N 名学生的成绩,将获得某一给定分数的学生人数输出。

输入

输入在第 1 行给出不超过 10^5 的正整数 N,即学生总人数。随后一行给出 N 名学生的百分制整数成绩,中间以空格分隔。最后一行给出要查询的分数个数 K(不超过 N 的正整数),随后是 K 个分数,中间以空格分隔。

输出

在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格。

样例输入

1
2
3
10
60 75 90 55 75 99 82 90 75 50
3 75 90 88

样例输出

1
3 2 0

提示

思路

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
const int mxn = 1e5 + 5;
int a[mxn], b[mxn];

int main()
{
int n; scanf("%d", &n);

for(int i=0; i<n; i++)
{
scanf("%d", &a[i]);
b[a[i]]++;
}

int k, t; scanf("%d", &k);
for(int i=0; i<k; i++){
scanf("%d", &t);
if(i) printf(" ");
printf("%d", b[t]);
}

return 0;
}