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

来源:互联网 发布:淘宝为啥不能提交订单 编辑:程序博客网 时间:2024/05/29 19:50

统计同成绩学生人数

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 21248    Accepted Submission(s): 11987

Problem Description
读入N名学生的成绩,将获得某一给定分数的学生人数输出。
Input
测试输入包含若干测试用例,每个测试用例的格式为
第1行:N
第2行:N名学生的成绩,相邻两数字用一个空格间隔。
第3行:给定分数

当读到N=0时输入结束。其中N不超过1000,成绩分数为(包含)0到100之间的一个整数。
Output
对每个测试用例,将获得给定分数的学生人数输出。
Sample Input
380 60 9060285 660560 75 90 55 75750
 
Sample Output
102
Hint
Hint
Huge input, scanf is recommended.
 
Source
浙大计算机研究生复试上机考试-2006年

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

问题简述参见上文。

问题分析(略)

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

题记:(略)


AC的C语言程序如下:

/* HDU1235 统计同成绩学生人数 */#include <stdio.h>#define N 1000int score[N];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[N];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;}



原创粉丝点击