Submission #1278940

#TimeUsernameProblemLanguageResultExecution timeMemory
1278940sagnbaevvPoi (IOI09_poi)C++20
100 / 100
167 ms31836 KiB
#include <bits/stdc++.h> #define int long long using namespace std; struct stats { int solved; int idx; int points; }; bool srt(stats a, stats b) { if (a.points == b.points) { if (a.solved == b.solved) { return a.idx < b.idx; } else { return a.solved > b.solved; } } else { return a.points > b.points; } } void solve() { int n, t, p; cin >> n >> t >> p; vector <vector <int> > v(n, vector <int>(t)); vector <int> point(t, 0); for (int i = 0; i < n; i++) { for (int j = 0; j < t; j++) { cin >> v[i][j]; if (v[i][j] == 0) { point[j]++; } } } vector <stats> table(n); for (int i = 0; i < n; i++) { int sum = 0; int cnt = 0; for (int j = 0; j < t; j++) { if (v[i][j] == 1) { sum += point[j]; cnt++; } } table[i].points = sum; table[i].solved = cnt; table[i].idx = i + 1; } sort(table.begin(), table.end(),srt); for (int i = 0; i < n; i++) { if (table[i].idx == p) { cout << table[i].points << " " << i + 1 << endl; return; } } } signed main() { ios::sync_with_stdio(false); cin.tie(0); int t = 1; //cin >> t; while (t--) { solve(); } }
#Verdict Execution timeMemoryGrader output
Fetching results...