Submission #483544

# Submission time Handle Problem Language Result Execution time Memory
483544 2021-10-30T12:17:31 Z victorang1 Poi (IOI09_poi) C++14
0 / 100
526 ms 16452 KB
//
//  main.cpp
//  sorting
//
//  Created by Team SSG on 30/10/21.
//

#include <iostream>
#include <vector>
#include <algorithm>
#include <map>

using namespace std;

struct Player {
    int score;
    int numberOfProblemSolved;
};

bool mapComparator(pair<int, Player> &a, pair<int, Player> &b) {

    if (a.second.score > b.second.score) return true;
    else if (a.second.score < b.second.score) return false;

    if (a.second.numberOfProblemSolved > b.second.numberOfProblemSolved) return true;
    else if (a.second.numberOfProblemSolved < b.second.numberOfProblemSolved) return false;

    if (a.first < b.first) return true;
    return false;
}

vector<pair<int, Player>> sort(map<int, Player> &userScores) {
    vector<pair<int, Player>> temp;

    for (auto& it : userScores) {
        temp.push_back(it);
    }

    sort(temp.begin(), temp.end(), mapComparator);

    return temp;
}

int main() {
    ios::sync_with_stdio(false);
    cin.tie(NULL);

    int N, T, P;

    cin >> N >> T >> P;

    vector<vector<int>> tasks(N, vector<int>(T));
    map<int, int> taskScores;

    for (int i = 0; i < N; ++i) {
        for (int j = 0; j < T; ++j) {
            cin >> tasks[i][j];
            if (tasks[i][j] == 0) {
                taskScores[j] += 1;
            }
        }
    }

    map<int, Player> userScores;

    for (int i = 0; i < N; ++i) {
        for (int j = 0; j < T; ++j) {
            if (tasks[i][j] == 1) {
                userScores[i].score += taskScores[j];
                userScores[i].numberOfProblemSolved++;
            }
        }
    }

    vector<pair<int, Player>> sortedPlayer = sort(userScores);

    for (auto& it : sortedPlayer) {
        cout << it.second.score << ' ' << it.first << '\n';
    }
}
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 204 KB Output isn't correct
2 Incorrect 0 ms 204 KB Output isn't correct
3 Incorrect 1 ms 204 KB Output isn't correct
4 Incorrect 0 ms 204 KB Output isn't correct
5 Incorrect 1 ms 204 KB Output isn't correct
6 Incorrect 0 ms 204 KB Output isn't correct
7 Incorrect 1 ms 332 KB Output isn't correct
8 Incorrect 2 ms 332 KB Output isn't correct
9 Incorrect 2 ms 384 KB Output isn't correct
10 Incorrect 3 ms 332 KB Output isn't correct
11 Incorrect 14 ms 844 KB Output isn't correct
12 Incorrect 23 ms 1140 KB Output isn't correct
13 Incorrect 70 ms 2756 KB Output isn't correct
14 Incorrect 101 ms 3692 KB Output isn't correct
15 Incorrect 177 ms 6276 KB Output isn't correct
16 Incorrect 197 ms 6852 KB Output isn't correct
17 Incorrect 294 ms 10080 KB Output isn't correct
18 Incorrect 340 ms 11220 KB Output isn't correct
19 Incorrect 461 ms 14732 KB Output isn't correct
20 Incorrect 526 ms 16452 KB Output isn't correct