/*
* POJ_1581.cpp
*
* Created on: 2013年10月19日
* Author: Administrator
*/
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
struct Team {
char name[100];
int solveNum;
int totalTime;
bool operator<(const Team& n) const {
if (solveNum > n.solveNum) {
return true;
}
if (solveNum == n.solveNum && totalTime < n.totalTime) {
return true;
}
return false;
}
} teams[4];
int main() {
int n;
scanf("%d", &n);
int i, j;
for (i = 0; i < n; ++i) {
scanf("%s", teams[i].name);
teams[i].solveNum = 0;
teams[i].totalTime = 0;
for (j = 0; j < 4; ++j) {
int a, b;
scanf("%d %d", &a, &b);
if (b != 0) {
teams[i].solveNum += 1;
teams[i].totalTime += ((a - 1) * 20 + b);
}
}
}
sort(teams, teams + 4);
printf("%s %d %d\n", teams[0].name, teams[0].solveNum, teams[0].totalTime);
return 0;
}
(DS1.5.4)POJ 1581 A Contesting Decision(结构体排序)
最新推荐文章于 2021-02-18 17:50:20 发布