您的位置:首页 > 其它

HDU1235 统计同成绩学生人数【水题+序列处理】

2017-07-22 08:18 267 查看

统计同成绩学生人数

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)

Total Submission(s): 21248    Accepted Submission(s): 11987

[align=left]Problem Description[/align]
读入N名学生的成绩,将获得某一给定分数的学生人数输出。

Input
测试输入包含若干测试用例,每个测试用例的格式为

第1行:N

第2行:N名学生的成绩,相邻两数字用一个空格间隔。

第3行:给定分数

当读到N=0时输入结束。其中N不超过1000,成绩分数为(包含)0到100之间的一个整数。

Output
对每个测试用例,将获得给定分数的学生人数输出。

Sample Input

3
80 60 90
60
2
85 66
0
5
60 75 90 55 75
75
0

 

Sample Output

1
0
2

HintHint
Huge input, scanf is recommended.

 

Source
浙大计算机研究生复试上机考试-2006年

问题链接HDU1235 统计同成绩学生人数

问题简述:参见上文。

问题分析:(略)

程序说明:这是一个大水题,给定的分数在后面输入,所以需要数组。
题记:(略)

AC的C语言程序如下:

/* HDU1235 统计同成绩学生人数 */

#include <stdio.h>

#define N 1000
int score
;

int main(void)
{
int n, grade, cnt, i;

while(scanf("%d", &n) && n) {
for(i=0; i<n; i++)
scanf("%d", &score[i]);
scanf("%d", &grade);

cnt = 0;
for(i=0; i<n; i++)
if(score[i] == grade)
cnt++;

printf("%d\n", cnt);
}

return 0;
}


AC的C++语言程序如下:

/* HDU1235 统计同成绩学生人数 */

#include <iostream>
#include <stdio.h>

using namespace std;

const int N = 1000;
int score
;

int main()
{
int n, grade, cnt;

while(scanf("%d", &n) && n) {
for(int i=0; i<n; i++)
scanf("%d", &score[i]);
scanf("%d", &grade);

cnt = 0;
for(int i=0; i<n; i++)
if(score[i] == grade)
cnt++;

printf("%d\n", cnt);
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: