全国中小学生Scratch作品大赛拉开了序幕。每个参赛选手可以通过网络直接上传作品。本次比赛人人可做评委。每个网络评委可以通过网络对每一件作品进行打分。评分系统也是请程序高手设计的,能自动去掉一个最高分和一个最低分,求出平均分。
输入格式:
输入数据包括两行: 第一行为n,表示n个评委,n>2。 第二行是n个评委的打分,分数之间有一个空格。打分是可以带有小数部分的。
输出格式:
输出平均分,结果保留两位小数。
输入样例:
6
10 9 8 7.9 9 9.5
输出样例:
8.88
作者: 翁恺
单位: 浙江大学
时间限制: 400 ms
内存限制: 64 MB
代码长度限制: 16 KB
1 import java.io.BufferedReader; 2 import java.io.IOException; 3 import java.io.InputStreamReader; 4 public class Main { 5 public static void main(String[] args) throws IOException{ 6 BufferedReader input=new BufferedReader(new InputStreamReader(System.in)); 7 String n=input.readLine(); 8 int rn=Integer.parseInt(n); 9 String t=input.readLine(); 10 String[] a=t.split(" "); 11 float max=Float.parseFloat(a[0]),min=max,ave=max,k; 12 for(int i=1;i<rn;i++) { 13 k=Float.parseFloat(a[i]); 14 if(max<k) { 15 max=k; 16 } 17 if(min>k) { 18 min=k; 19 } 20 ave+=k; 21 } 22 ave=(ave-min-max)/(rn-2); 23 System.out.printf("%.2f",ave); 24 } 25 }
直接用Scanner会超时,所以用了IO流。如果新定义一个数组存放评分 应该不会超出内存上限,但是用k可以减少一下内存,这个倒是无所谓。