2
1 blue 90 80 70
b clan 80 70 60
85 75 65
1 blue 90 80 70
分析:首先使用一个二维数组来保存输入的数据,因为每组数据的后三个为成绩,所以只需要把成绩转换为整数,分别相加就可以求出平均成绩,平均成绩求出后可以使用一个数组保存每个学生的成绩之和,找出总成绩的最大值,
并且记下最大值的下标,即可输出成绩最高学生的数据。
import java.util.Scanner;
public class Main{
public static void main(String args[]){
input();
}
public static void input(){
Scanner in = new Scanner(System.in);
int n = in.nextInt();
String str[][] = new String[n][5];
int sum[] = new int[n];
int grade1=0,grade2=0,grade3=0;
for(int i=0;i<n;i++){
for(int j=0;j<5;j++){
str[i][j]=in.next();
if(j==2){
grade1+=Integer.parseInt(str[i][j]);
}
else if(j==3){
grade2+=Integer.parseInt(str[i][j]);
}
else if(j==4){
grade3+=Integer.parseInt(str[i][j]);
}
}
sum[i] = Integer.parseInt(str[i][2])+Integer.parseInt(str[i][3])+Integer.parseInt(str[i][4]);
}
int max=sum[0];
int index=0;
for(int i=1;i<sum.length;i++){
if(sum[i]>max){
max=sum[i];
index=i;
}
}
System.out.print(grade1/n +" "+ grade2/n + " " + grade3/n);
System.out.println();
for(int i=0;i<5;i++){
System.out.print(str[index][i]+" ");
}
}
}