题目来源

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

输入格式:

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

输出格式:

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

输入样例:

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

输出样例:

3 2 0

分析:

满分就100分,开个数组,下标是分数,保存的是该分数的人数

输入分数(下标),查询对应的人数就好了

注意 i != 0 先输出了空格,再输出查询数据,末尾不能有空格

C++实现:

 1 #include <iostream>
 2 using namespace std;
 3 int arr[101] = { 0 };
 4 int main()
 5 {
 6     int N;    //学生总人数
 7     int tmp;
 8     cin >> N;
 9     for (int i = 0; i < N; ++i)
10     {
11         cin >> tmp;
12         arr[tmp]++;
13     }
14     int K;
15     cin >> K;
16     for (int i = 0; i < K; ++i)
17     {
18         cin >> tmp;
19         if (i != 0)
20         {
21             cout << ' ';
22         }
23         cout << arr[tmp];
24     }
25     return 0;
26 }

Java实现:

12-29 16:44