Submission #931471

# Submission time Handle Problem Language Result Execution time Memory
931471 2024-02-21T21:27:12 Z emad234 Poi (IOI09_poi) C++17
100 / 100
442 ms 19308 KB
#include <bits/stdc++.h>
#define   ll long long
#define F first
#define S second
#define pii pair<int,int>
const int mod = 1e9 + 7;
const int mxN = 2e5 + 5;
using namespace std;
struct ranking{
	int score,num,id;
};
ranking ans[mxN];
bool operator<(ranking a,ranking b){
	return tie(a.score,a.num,a.id) > tie(b.score,b.num,b.id);
}
bool operator==(ranking a,ranking b){
	return tie(a.score,a.num,a.id) == tie(b.score,b.num,b.id);
}
int p[mxN];
int a[2021][2021];
signed main(){
	int n,t,P;
	cin >>n>>t>>P;
	for(int i = 1;i <= n;i++){
		for(int j = 1;j <= t;j++){
			cin >>a[i][j];
			if(!a[i][j]) p[j]++;
		}
	}
	for(int i = 1;i <= n;i++){
		ans[i].id = {-i};
		for(int j = 1;j <= t;j++){
			ans[i].num += (a[i][j]);
			ans[i].score += (p[j] * a[i][j]);
		}
	}
	sort(ans + 1,ans + n + 1);
	for(int i = 1;i <= n;i++){
		if(ans[i].id == -P){
			cout<<ans[i].score<<' '<<i;
			return 0;
		}
	}
}
# Verdict Execution time Memory Grader output
1 Correct 2 ms 4596 KB Output is correct
2 Correct 1 ms 4444 KB Output is correct
3 Correct 1 ms 4444 KB Output is correct
4 Correct 1 ms 4444 KB Output is correct
5 Correct 1 ms 6492 KB Output is correct
6 Correct 1 ms 6492 KB Output is correct
7 Correct 2 ms 6492 KB Output is correct
8 Correct 2 ms 6492 KB Output is correct
9 Correct 2 ms 6492 KB Output is correct
10 Correct 4 ms 6492 KB Output is correct
11 Correct 19 ms 9048 KB Output is correct
12 Correct 24 ms 8992 KB Output is correct
13 Correct 68 ms 10828 KB Output is correct
14 Correct 97 ms 12880 KB Output is correct
15 Correct 170 ms 14928 KB Output is correct
16 Correct 185 ms 15200 KB Output is correct
17 Correct 272 ms 16996 KB Output is correct
18 Correct 301 ms 19032 KB Output is correct
19 Correct 404 ms 19048 KB Output is correct
20 Correct 442 ms 19308 KB Output is correct