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

传送门

https://pintia.cn/problem-sets/994805260223102976/problems/994805289432236032

题目

为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。
输入格式:
输入在第1行给出不超过10^5的正整数N,即参赛人数。随后N行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从1开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。
输出格式:
在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保证答案唯一,没有并列。
输入样例:
6
3 65
2 80
1 100
2 70
3 40
3 0
输出样例:
2 150

分析

先声明一个数组,然后读入数据,用学校编号作为下标,将学生成绩加到对应下标学校的总分中去,每加一次,比较一次大小。
最后将最大总分学校的索引和最大总分输出即可。

源代码

//C/C++实现
#include 
#include 

using namespace std;

int main(){
    int n;
    scanf("%d", &n);
    vector v(n + 1);
    int max_index = -1, max_grade = 0;
    for(int i = 0; i < n; ++i){
        int index, grade;
        scanf("%d %d", &index, &grade);
        v[index] += grade;
        if(v[index] > max_grade){
            max_index = index;
            max_grade = v[index];
        }
    }
    printf("%d %d\n", max_index, max_grade);
    return 0;
}

你可能感兴趣的:(PAT-B 1032. 挖掘机技术哪家强(20))