#include <iostream> #include <iomanip> #include <vector> #include <algorithm> using namespace std; struct Player { int id; double score; }; double calculateFinalScore(vector<double>& scores) { sort(scores.begin(), scores.end()); double sum = 0; for (int i = 1; i < 4; i++) { sum += scores[i]; } return sum / 3.0; } bool comparePlayers(const Player& a, const Player& b) { return a.score > b.score; } int main() { int n; cin >> n; vector<Player> players(n); for (int i = 0; i < n; i++) { cin >> players[i].id; vector<double> scores(5); for (int j = 0; j < 5; j++) { cin >> scores[j]; } players[i].score = calculateFinalScore(scores); } sort(players.begin(), players.end(), comparePlayers); for (int i = 0; i < 3; i++) { cout << fixed << setprecision(3); cout << players[i].id << " " << players[i].score << endl; } return 0; } /************************************************************** Problem: 1315 User: wengsihan Language: C++ Result: Accepted Time:16 ms Memory:2076 kb ****************************************************************/