题目描述
n(n≤100)n(n\le 100)n(n≤100) 名同学参加歌唱比赛,并接受 m(m≤20)m(m\le 20)m(m≤20) 名评委的评分,评分范围是 0 到 10 分。这名同学的得分就是这些评委给分中去掉一个最高分,去掉一个最低分,剩下 m−2m-2m−2 个评分的平均数。请问得分最高的同学分数是多少?评分保留 2 位小数。
输入格式
无
输出格式
无
输入输出样例
输入
7 6
4 7 2 6 10 7
0 5 0 10 3 10
2 6 8 4 3 6
6 3 6 7 5 8
5 9 3 3 8 1
5 9 9 3 2 0
5 8 0 4 1 10
输出
6.00
import java.sql.Array;
import java.text.DecimalFormat;
import java.util.*;
public class P5738 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
float[][] num = new float[n][m];
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
num[i][j] = sc.nextInt();
}
}
sc.close();
int sum = 0;
ArrayList <Float>arrayList = new ArrayList<>();
for (int i = 0; i < n; i++) {
Arrays.sort(num[i]);
for (int j = 1; j < m-1; j++) {
sum+=num[i][j];
}
arrayList.add((float) sum);
sum =0;
}
Collections.sort(arrayList);
float s= (float) arrayList.get(arrayList.size()-1);
DecimalFormat df = new DecimalFormat("0.00");
System.out.print(df.format(s/(m-2)));
}
}