1 条题解
-
0
C :
#include <stdio.h> struct student {char number[10]; char name[10]; int score1; int score2; int score3; }s[100],s2[100]; int main() {int n,i; int aver1,aver2,aver3,sum=0,sum1[100],max; scanf("%d",&n); for(i=0;i<n;i++) scanf("%s%s%d%d%d",s[i].number,s[i].name,&s[i].score1,&s[i].score2,&s[i].score3); // for(i=0;i<n;i++) //printf("%s %s %d %d %d\n",s[i].number,s[i].name,s[i].score1,s[i].score2,s[i].score3); for(i=0;i<n;i++) sum+=s[i].score1; aver1=sum/n; for(sum=0,i=0;i<n;i++) sum+=s[i].score2; aver2=sum/n; for(sum=0,i=0;i<n;i++) sum+=s[i].score3; aver3=sum/n; for(i=0;i<n;i++) sum1[i]=s[i].score1+s[i].score2+s[i].score3; max=sum1[0]; for(i=0;i<n;i++) if(sum1[i]>=max) s2[0]=s[i]; printf("%d %d %d\n",aver1,aver2,aver3); printf("%s %s %d %d %d",s2[0].number,s2[0].name,s2[0].score1,s2[0].score2,s2[0].score3); return 0; }C++ :
#include<stdio.h> #define N 100 struct student { char num[6]; char name[8]; int score[4]; int avr; }stu[N]; int r; int main() { int sum3=0,sum1=0,sum2=0,maxi; int sum; int max; scanf("%d",&r); int i,j; for(i=0;i<r;i++) { scanf("%s%s",stu[i].num,stu[i].name); for(j=0;j<3;j++) { scanf("%d",&stu[i].score[j]); } } max=0; maxi=0; for(i=0;i<r;i++) { sum=0; sum1+=stu[i].score[0]; sum2+=stu[i].score[1]; sum3+=stu[i].score[2]; for(j=0;j<3;j++) sum+=stu[i].score[j]; stu[i].avr=sum/3; if(sum>max) { max=sum; maxi=i; } } printf("%d %d %d",sum1/r,sum2/r,sum3/r); putchar('\n'); printf("%s %s %d %d %d",stu[maxi].num,stu[maxi].name,stu[maxi].score[0],stu[maxi].score[1],stu[maxi].score[2]); return 0; }Java :
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); int num = input.nextInt(); String[] str1 = new String[num], str2 = new String[num]; int[][] n = new int[3][num]; int count = 0, tem = 0, x = 0; for (int i = 0; i < num; i++) { str1[i] = input.next(); str2[i] = input.next(); n[0][i] = input.nextInt(); n[1][i] = input.nextInt(); n[2][i] = input.nextInt(); tem = n[0][i] + n[1][i] + n[2][i]; if (i == 0 || count < tem) { count = tem; x = i; } } input.close(); int[] out = new int[3]; for (int i = 0; i < 3; i++) { out[i] = 0; for (int j = 0; j < num; j++) { out[i] += n[i][j]; } out[i] /= num; if (i == 2) { System.out.println(out[i]); }else { System.out.print(out[i] + " "); } } System.out.println(str1[x] + " " + str2[x] + " " + n[0][x] + " " + n[1][x] + " " + n[2][x]); } }Python :
n = input() def f(x): if ord(x[0]) < 90: return int(x) return x a =[ map(f, raw_input().split()) for i in range(n)] print sum([x[2] for x in a])/n,sum([x[3] for x in a])/n,sum([x[4] for x in a])/n maxx=max([sum(x[2:]) for x in a]) c=0 for i in [sum(x[2:]) for x in a]: if i ==maxx: break c+=1 print str(a[c]).replace(', ',' ').replace('\'','')[1:-1]+' '
信息
- ID
- 2035
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 上传者