Submission #933638

# Submission time Handle Problem Language Result Execution time Memory
933638 2024-02-26T03:31:53 Z Neytrino Poi (IOI09_poi) C++14
100 / 100
193 ms 16220 KB
	/**
	*    author:    inastranets
	*    created:   26.02.2024 06:14:03		
	**/
	#include <bits/stdc++.h>

	using namespace std;

	//#if !defined(ONLINE_JUDGE)
	//#include "debug.hpp"
	//#endif

	const int UNDEF = -1;

	class contestant {
	public:
		int score;
		int solved;
		int ID;
		//contestant(int _score, int _solved, int _ID) : score(_score), solved(_solved), ID(_ID) {} 
	};

	int main() {
		ios_base::sync_with_stdio(false);
		cin.tie(0);

		int n, t, p;

		cin >> n >> t >> p;

		vector<contestant> a(n);
		vector<int> point_of_tasks(t);
		vector<vector<int> > solved(n, vector<int>(t, 0));

		for (int i = 0; i < n; ++ i) {
			for (int j = 0; j < t; ++ j) {
				cin >> solved[i][j];
				point_of_tasks[j] += (solved[i][j] == 0);			
			}
		}

		for (int i = 0; i < n; ++ i) {
			a[i].ID = i + 1;
			for (int j = 0; j < t; ++ j) {
				if (solved[i][j]) {
					++ a[i].solved;
					a[i].score += point_of_tasks[j];
				}
			}
		}

		sort(a.begin(), a.end(), [](const contestant& a, const contestant& b) {
			if( a.score > b.score )
				return true;
			if( b.score > a.score )
				return false;
			if( a.solved > b.solved )
				return true;
			if( b.solved > a.solved )
				return false;
			return a.ID < b.ID;
		});

		for (int i = 0; i < n; ++ i) {
			if (a[i].ID == p) {
				cout << a[i].score << ' ' << i + 1;
				break;
			}
		}

		return 0;
	}	
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 1 ms 344 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 1 ms 348 KB Output is correct
10 Correct 2 ms 348 KB Output is correct
11 Correct 6 ms 860 KB Output is correct
12 Correct 11 ms 1116 KB Output is correct
13 Correct 28 ms 2820 KB Output is correct
14 Correct 39 ms 3804 KB Output is correct
15 Correct 69 ms 6236 KB Output is correct
16 Correct 81 ms 6856 KB Output is correct
17 Correct 110 ms 9820 KB Output is correct
18 Correct 124 ms 11176 KB Output is correct
19 Correct 165 ms 14640 KB Output is correct
20 Correct 193 ms 16220 KB Output is correct