算法初步——哈希表B.1038统计同成绩学生

#include <bits/stdc++.h>
#include<math.h>
#include <string>
using namespace std;
const int MAX_LEN = 100005;
int main(){
    int n;
    int temp[101];
    for(int i=0;i<101;++i){
        temp[i] = 0;
    }
    scanf("%d",&n);
    int cease[n];
    for(int i=0;i<n;++i){
        cin>>cease[i];
        temp[cease[i]]++;
    }
    int tem;
    cin>>tem;
    int te[tem];
    for(int i =0;i<tem;++i){
        cin>>te[i];
    }
    for(int i=0;i<tem;++i){
        int result = te[i];
        if(i ==0){
            cout<<temp[result];
        }else{
            cout<<" "<<temp[result];
        }
    }
    system("pause");
    return 0;
} 

原文地址:https://www.cnblogs.com/JasonPeng1/p/12155910.html

时间: 2024-09-29 20:12:06

算法初步——哈希表B.1038统计同成绩学生的相关文章

1038 统计同成绩学生 (20 分)

题目:1038 统计同成绩学生 (20 分) 本题要求读入 N 名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第 1 行给出不超过 1 的正整数 N,即学生总人数.随后一行给出 N 名学生的百分制整数成绩,中间以空格分隔.最后一行给出要查询的分数个数 K(不超过 N 的正整数),随后是 K 个分数,中间以空格分隔. 输出格式: 在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格. 输入样例: 10 60 75 90 55 75 99 82

P 1038 统计同成绩学生

转跳点:?? 1038 统计同成绩学生 (20分) 本题要求读入 N 名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第 1 行给出不超过 1 的正整数 N,即学生总人数.随后一行给出 N 名学生的百分制整数成绩,中间以空格分隔.最后一行给出要查询的分数个数 K(不超过 N 的正整数),随后是 K 个分数,中间以空格分隔. 输出格式: 在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格. 输入样例: 10 60 75 90 55 75 99

PAT——1038. 统计同成绩学生

本题要求读入N名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第1行给出不超过105的正整数N,即学生总人数.随后1行给出N名学生的百分制整数成绩,中间以空格分隔.最后1行给出要查询的分数个数K(不超过N的正整数),随后是K个分数,中间以空格分隔. 输出格式: 在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格. 输入样例: 10 60 75 90 55 75 99 82 90 75 50 3 75 90 88 输出样例: 3 2 0 1

1038 统计同成绩学生

一.题目: 本题要求读入N名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第1行给出不超过10^5^的正整数N,即学生总人数.随后1行给出N名学生的百分制整数成绩,中间以空格分隔.最后1行给出要查询的分数个数K(不超过N的正整数),随后是K个分数,中间以空格分隔. 输出格式: 在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格. 输入样例: 10 60 75 90 55 75 99 82 90 75 50 3 75 90 88 输出样例:

1038 统计同成绩学生(20 分)

本题要求读入 N 名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第 1 行给出不超过 10?5?? 的正整数 N,即学生总人数.随后一行给出 N 名学生的百分制整数成绩,中间以空格分隔.最后一行给出要查询的分数个数 K(不超过 N 的正整数),随后是 K 个分数,中间以空格分隔. 输出格式: 在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格. 输入样例: 10 60 75 90 55 75 99 82 90 75 50 3 75 90

1038 统计同成绩学生 (20分)

#include <iostream> using namespace std; int main() { int n,k,g; int grade[101]={0}; cin>>n; int *k_grade=new int[100005];//稍微大一点 for(int i=0;i<n;i++) { cin>>g; grade[g]++; } cin>>k; for(int i=0;i<k;i++) { cin>>k_grade[

PAT 乙级 1038 统计同成绩的学生C++版

1038. 统计同成绩学生(20) 时间限制 250 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 本题要求读入N名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第1行给出不超过105的正整数N,即学生总人数.随后1行给出N名学生的百分制整数成绩,中间以空格分隔.最后1行给出要查询的分数个数K(不超过N的正整数),随后是K个分数,中间以空格分隔. 输出格式: 在一行中按查询顺序给出得分等于指定分数的学生人数

Java数据结构和算法之哈希表

五.哈希表 一般的线性表.树中,记录在结构中的相对位置是随机的即和记录的关键字之间不存在确定的关系,在结构中查找记录时需进行一系列和关键字的比较.这一类查找方法建立在"比较"的基础上,查找的效率与比较次数密切相关.理想的情况是能直接找到需要的记录,因此必须在记录的存储位置和它的关键字之间建立一确定的对应关系f,使每个关键字和结构中一个唯一的存储位置相对应.因而查找时,只需根据这个对应关系f找到给定值K的像f(K).若结构中存在关键字和K相等的记录,则必定在f(K)的存储位置上,由此不需

散列算法和哈希表结构

散列算法和哈希表结构 算法概述 Hash ,一般翻译做" 散列" ,也有直接音译为" 哈希" 的,就是把任意长度的输入(又叫做预映射, pre-image ),通过散列算法,变换成固定长度的输出,该输出就是散列值.这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不 同的输入可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值.简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数. 哈希表 数组的特点是:寻址容易,插入和删除困难: