题目链接
这道题其实有一个简单的思路,就是不考虑组号和队员号,直接记录成绩加和;
利用哈希的方法,即按照编号来存放至数组;
// ConsoleApplication1.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
#pragma warning(disable:4996);
#include <iostream>
#include<stdio.h>
#include<algorithm>
#include<string.h>
#include<stack>
#include<math.h>
using namespace std;
int main()
{
int n;
int a[1005] = { 0 };
cin >> n;
for (int i = 0;i < n;i++)
{
int x, y, grade;
scanf("%d-%d %d", &x, &y, &grade);
a[x] += grade;//只利用了组号和成绩的信息;
}
int max = 1;
for (int i = 1;i <= 1000;i++)
{
if (a[i] > a[max]) max = i;
}
cout << max << " " << a[max];
return 0;
}