PAT-basic-1038 统计同成绩学生

发布时间 2023-04-21 00:46:13作者: 正明小佐

一、题目


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

输入格式:

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

输出格式:

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

输入样例:

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

输出样例:

3 2 0

二、解析


水桶法

三、代码


package org.example.shuati;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Scanner;

public class PAT_basic_1038 {
    private static Scanner input = new Scanner(System.in);
    private static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    public static void main(String[] args) {
        int n = input.nextInt();
        int grade[] = new int[100001];
        for (int i = 0; i < n; i++) {
            grade[input.nextInt()]++;
        }
        int k = input.nextInt();
        for (int i = 0; i < k; i++) {
            int t = input.nextInt();
            if(i == 0)
                System.out.print(grade[t]);
            else
                System.out.print(" " + grade[t]);
        }
    }
}