| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 1218367 | exoworldgd | Poi (IOI09_poi) | C++20 | 0 ms | 0 KiB | 
#include <bits/stdc++.h>
#define exoworldgd cin.tie(0)->sync_with_stdio(0),cout.tie(0)
#define int long long
using namespace std;
signed main(void) {
	exoworldgd;
    int n,m,p,rank = 0;
    cin >> n >> m >> p;
    solved[n+1][m],w[m],score[n+1],cnt[n+1];
    memset(w,0,sizeof(w)),memset(score,0,sizeof(score)),memset(cnt,0,sizeof(cnt));
    for(int i = 1; i <= n; i++) for(int j = 0; j < m; j++) cin >> solved[i][j];
    for(int j = 0; j < m; j++) for(int i = 1; i <= n; i++) if(!solved[i][j]) w[j]++;
    for(int i = 1; i <= n; i++) for(int j = 0; j < m; j++) if(solved[i][j])score[i] += w[j],cnt[i]++;
    vector<tuple<int,int,int>> v;
    v.reserve(n);
    for(int i = 1; i <= n; i++) v.emplace_back(-score[i],-cnt[i],i);
    sort(v.begin(),v.end());
    for(int i = 0; i < n; i++) if(get<2>(v[i]) == p) { rank = i+1; break; }
    cout << score[p] << " " << rank;
}
