Problem Description
青年歌手大獎賽中,評委會給參賽選手打分。選手得分規則爲去掉一個最高分和一個最低分,然後計算平均得分,請編程輸出某選手的得分。
Input
輸入數據有多組,每組佔一行,每行的第一個數是n(2<n<=100),表示評委的人數,然後是n個評委的打分。
Output
對於每組輸入數據,輸出選手的得分,結果保留2位小數,每組輸出佔一行。
Sample Input
3 99 98 97
4 100 99 98 97
Sample Output
98.00
98.50
Author
lcy
試了一下用Java,邏輯思維差不多,寫法也很簡單
import java.text.DecimalFormat;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
while(in.hasNextInt()){
int n=in.nextInt();
double sum=0,avg=0;
int max=0,min=100;
for(int i=0;i<n;i++){
int k=in.nextInt();
if(k>max)
max=k;
if(k<min)
min=k;
sum+=k;
}
avg=(sum-max-min)/(n-2);
DecimalFormat g=new DecimalFormat("0.00");
System.out.println(g.format(avg));
}
in.close();
}
}