PAT乙级.1032. 挖掘机技术哪家强(20)

来源:互联网 发布:什么翻墙软件 编辑:程序博客网 时间:2024/04/29 13:41

1032. 挖掘机技术哪家强(20)


题目:

为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。

输入格式

输入在第1行给出不超过105的正整数N,即参赛人数。随后N行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从1开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。

输出格式

在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保证答案唯一,没有并列。

输入样例

6
3 65
2 80
1 100
2 70
3 40
3 0

输出样例

2 150

PAT链接


思路:

1.结构体存信息
2.不断更新最高的分数和对应的编号


代码:

/*** @tag     PAT_B_1032* @authors R11happy (xushuai100@126.com)* @date    2016-08-10 20:51:16-21:28* @version 1.0* @Language C++* @Ranking  255/2741*/#include <cstdio>#include <cstdlib>#include <cstring>struct Person{    int score;}gur[100005];   //看清所开数组大小,第一次开10005结果测试点3段错误int main(){    int N, score,index, MaxIndex;    int MaxScore = 0;    scanf("%d", &N);    //初始化    scanf("%d %d", &MaxIndex, &MaxScore);    gur[MaxIndex].score += MaxScore;    //注意初始化,不能省    for(int i = 1; i<N; i++)    {        scanf("%d %d", &index, &score);        gur[index].score += score;        if(gur[index].score >= MaxScore)        {            MaxIndex = index;            MaxScore = gur[index].score;        }    }    printf("%d %d", MaxIndex, MaxScore);    return 0;}

收获:

1.初始化的时候要做到不重不漏

    scanf("%d %d", &MaxIndex, &MaxScore);    gur[MaxIndex].score += MaxScore;    //注意初始化,不能省

2.注意所开数组大小:

struct Person{    int score;}gur[100005];   //看清所开数组大小,第一次开10005结果测试点3段错误
0 0