| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 906082 | JCC | Poi (IOI09_poi) | C++14 | 242 ms | 24288 KiB | 
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<algorithm>
#include<iostream>
#include<vector>
#include<map>
using namespace std;
vector<int> points,one;
bool comp(int i, int j) {
    if (points[i] > points[j]) {
        return true;
    }
    else if (points[i] < points[j]) {
        return false;
    }
    else if (one[i] > one[j]) {
        return true;
    }
    else if (one[i] < one[j]) {
        return false;
    }
    return i < j;
}
int main() {
    ios::sync_with_stdio(false);
    cin.tie(NULL);
    int n,t,p,x;
    cin >> n >> t >> p;
    vector<vector<int>> k(n);
    vector<int> player;
    for(int i = 0; i < n; i++) {
        player.push_back(i);
        for (int j = 0;j < t; j++) {
            cin >> x;
            k[i].push_back(x);
        }
    }
    vector<int> scores;
    for(int j = 0; j < t; j++) {
        int total = 0;
        for (int i = 0;i < n; i++) {
            if (k[i][j] == 0) total++;
        }
        scores.push_back(total);
    }
    for (int i=0;i<n;i++) {
        int point = 0;
        int done = 0;
        for (int j=0;j < t;j++) {
            if (k[i][j] == 1) {
                point+=scores[j];
                done++;
            }
        }
        points.push_back(point);
        one.push_back(done);
    }
    sort(player.begin(), player.end(), comp);
    for (int i=0;i < n; i++) {
        if (player[i] == p-1) {
            cout << points[p-1] << " " << i+1 << "\n";
        }
    }
    return 0;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
