为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。
输入格式:
输入在第1行给出不超过105的正整数N,即参赛人数。随后N行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从1开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。
输出格式:
在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保证答案唯一,没有并列。
输入样例:
6 3 65 2 80 1 100 2 70 3 40 3 0
输出样例:
2 150
1 #include <stdio.h> 2 #include <stdlib.h> 3 #include<string.h> 4 5 struct Node 6 { 7 int name; 8 int score; 9 }school[100002]; 10 11 int cmp( const void *a, const void *b) 12 { 13 struct Node *c = ( struct Node *)a; 14 struct Node *d = ( struct Node *)b; 15 return d->score-c->score; 16 } 17 int main() 18 { 19 int n,m; 20 int name,score; 21 scanf("%d",&n); 22 m = n; 23 while( n-- ) 24 { 25 scanf("%d%d",&name,&score); 26 school[name].name = name; 27 school[name].score += score; 28 } 29 qsort( school+1,m,sizeof(school[0]),cmp); 30 printf("%d %d",school[1].name,school[1].score); 31 return 0; 32 }