例2.5 | 统计同成绩学生人数 | (九度教程第10题) |
---|---|---|
时间限制:1秒 | **内存限制:32兆 ** | 特殊判题:否 |
题目描述:
读入N名学生的成绩,将获得某一给定分数的学生人数输出。
输入:
测试输入包含若干测试用例,每个测试用例的格式为
第1行:N
第2行:N名学生的成绩,相邻两数字用一个空格间隔。
第3行:给定分数
当读到N=0时输入结束。其中N不超过1000,成绩分数为(包含)0到100之间的一个整数。
输出:
对每个测试用例,将获得给定分数的学生人数输出。
样例输入:
3
80 60 90
60
2
85 66
0
5
60 75 90 55 75
75
0
样例输出:
1
0
2
来源:
2006年浙江大学计算机及软件工程研究生机试真题
#include
int main () {
int n;
while (scanf ("%d",&n) != EOF && n != 0) {
int Hash[101] = {0}; //输入判断增加对n是否等于零进行 判断
for (int i = 1;i <= n;i ++) {//建立一个初始为0的Hash数组用来记录各种分数出现的次 数
int x;
scanf ("%d",&x);
Hash[x] ++; //统计分数出现次数
}
int x;
scanf ("%d",&x);
printf("%d\n",Hash[x]); //得到需要查询的目标分数后,只需简单的查询我们统 计的数量即可
}
return 0;
}
例2.6 | Sort | (九度教程第11题) |
---|---|---|
时间限制:1秒 | **内存限制:32兆 ** | 特殊判题:否 |
题目描述:
给你n个整数,请按从大到小的顺序输出其中前m大的数。
输入: 输出: 样例输入: 样例输出: 题目描述: 输入: 输出: 样例输入: 样例输出: 来源: 题目1088:剩下的树 题目描述: 输入: 输出: 样例输入: 样例输出: 来源:
每组测试数据有两行,第一行有两个数n,m(0
对每组测试数据按从大到小的顺序输出前m大的数。
5 3
3 -35 92 213 -644
213 92 3#include
题目1156
谁是你的潜在朋友
(九度教程第12题)
时间限制:1秒
**内存限制:32兆 **
特殊判题:否
“臭味相投”——这是我们描述朋友时喜欢用的词汇。两个人是朋友通常意味着他们存在着许多共同的兴趣。然而作为一个宅男,你发现自己与他人相互了解的机会并不太多。幸运的是,你意外得到了一份北大图书馆的图书借阅记录,于是你挑灯熬夜地编程,想从中发现潜在的朋友。 首先你对借阅记录进行了一番整理,把N个读者依次编号为1,2,…,N,把M本书依次编号为1,2,…,M。同时,按照“臭味相投”的原则,和你喜欢读同一本书的人,就是你的潜在朋友。你现在的任务是从这份借阅记录中计算出每个人有几个潜在朋友。
每个案例第一行两个整数N,M,2 <= N ,M<= 200。接下来有N行,第i(i = 1,2,…,N)行每一行有一个数,表示读者i-1最喜欢的图书的编号P(1<=P<=M)
每个案例包括N行,每行一个数,第i行的数表示读者i有几个潜在朋友。如果i和任何人都没有共同喜欢的书,则输出“BeiJu”(即悲剧,^ ^)
4 5
2
3
2
1
1
BeiJu
1
BeiJu
2011年北京大学计算机研究生机试真题#include
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:7444
解决:3379
有一个长度为整数L(1<=L<=10000)的马路,可以想象成数轴上长度为L的一个线段,起点是坐标原点,在每个整数坐标点有一棵树,即在0,1,2,...,L共L+1个位置上有L+1棵树。 现在要移走一些树,移走的树的区间用一对数字表示,如 100 200表示移走从100到200之间(包括端点)所有的树。 可能有M(1<=M<=100)个区间,区间之间可能有重叠。现在要求移走所有区间的树之后剩下的树的个数。
两个整数L(1<=L<=10000)和M(1<=M<=100)。 接下来有M组整数,每组有一对数字。
可能有多组输入数据,对于每组输入数据,输出一个数,表示移走所有区间的树之后剩下的树的个数。
500 3
100 200
150 300
470 471
298
2011年清华大学计算机研究生机试真题#include