HDOJ1235 统计同成绩学生人数

来源:互联网 发布:淘宝店装修图片尺寸 编辑:程序博客网 时间:2024/06/07 18:41

统计同成绩学生人数

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


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.
 题目提示了使用scanf来进行输入,所以我就用了StreamTokenizer来进行输入。
scanner应该也是OK的。
统计一下就行了。
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.PrintWriter;import java.io.StreamTokenizer;public class Main{public static void main(String[] args) throws IOException {StreamTokenizer in = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));while (in.nextToken() != StreamTokenizer.TT_EOF) {int n = (int) in.nval;if(n == 0){break;}int arr[] = new int[n];for (int i = 0; i < n; i++) {in.nextToken();arr[i] = (int) in.nval;}in.nextToken();int score = (int) in.nval;int count = 0;for (int i = 0; i < arr.length; i++) {if(arr[i] == score){count++;}}out.println(count);out.flush();}}}