Submission #412788

# Submission time Handle Problem Language Result Execution time Memory
412788 2021-05-27T13:52:07 Z rqi Poi (IOI09_poi) C++14
100 / 100
418 ms 12104 KB
#include <bits/stdc++.h>
using namespace std;

typedef pair<int, int> pi;

#define mp make_pair
#define f first
#define s second
#define pb push_back

#define all(x) begin(x), end(x)

#include <ext/pb_ds/assoc_container.hpp>
using namespace __gnu_pbds;

template<class T> using Tree = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;

const int mx = 2005;
bool solved[mx][mx];
int prob_val[mx];
int score[mx];
int num_solved[mx];

int main(){
	cin.tie(0)->sync_with_stdio(0);
	int N, T, P;
	cin >> N >> T >> P;
	for(int i = 1; i <= N; i++){
		for(int j = 1; j <= T; j++){
			cin >> solved[i][j];
		}
	}

	for(int j = 1; j <= T; j++){
		for(int i = 1; i <= N; i++){
			if(!solved[i][j]){
				prob_val[j]++;
			}
		}
	}



	for(int i = 1; i <= N; i++){
		for(int j = 1; j <= T; j++){
			if(solved[i][j]){
				score[i]+=prob_val[j];
				num_solved[i]++;
			}
		}
	}

	// for(int j = 1; j <= T; j++){
	// 	cout << "j, prob_val[j]: " << j << " " << prob_val[j] << "\n";
	// }
	// for(int i = 1; i <= N; i++){
	// 	cout<< "i, score[i]: " << i << " " << score[i] << "\n";
	// }
	// for(int i = 1; i <= N; i++){
	// 	cout<< "i, num_solved[i]: " << i << " " << num_solved[i] << "\n";
	// }

	vector<pair<pi, int>> v;
	for(int i = 1; i <= N; i++){
		v.pb(mp(mp(-score[i], -num_solved[i]), i));
	}
	sort(all(v));
	for(int i = 0; i < N; i++){
		int ind = v[i].s;
		if(ind == P){
			cout << score[ind] << " " << i+1 << "\n";
		}
	}
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 332 KB Output is correct
3 Correct 1 ms 332 KB Output is correct
4 Correct 1 ms 332 KB Output is correct
5 Correct 1 ms 332 KB Output is correct
6 Correct 1 ms 332 KB Output is correct
7 Correct 1 ms 460 KB Output is correct
8 Correct 2 ms 460 KB Output is correct
9 Correct 3 ms 460 KB Output is correct
10 Correct 4 ms 716 KB Output is correct
11 Correct 13 ms 1100 KB Output is correct
12 Correct 22 ms 1640 KB Output is correct
13 Correct 65 ms 3072 KB Output is correct
14 Correct 88 ms 3928 KB Output is correct
15 Correct 156 ms 5700 KB Output is correct
16 Correct 169 ms 6004 KB Output is correct
17 Correct 243 ms 8000 KB Output is correct
18 Correct 277 ms 9080 KB Output is correct
19 Correct 373 ms 11232 KB Output is correct
20 Correct 418 ms 12104 KB Output is correct