Submission #262113

# Submission time Handle Problem Language Result Execution time Memory
262113 2020-08-12T11:12:22 Z ElyesChaabouni Teams (IOI15_teams) C++14
34 / 100
4000 ms 19696 KB
#include "teams.h"
/*#pragma GCC optimize("O3")*/
#include<bits/stdc++.h>
//#include <ext/pb_ds/assoc_container.hpp>
//#include <ext/pb_ds/tree_policy.hpp> 
//#define ordered_set tree<int, null_type,less<int >, rb_tree_tag,tree_order_statistics_node_update> 
#define eps 1e-9
#define MOD1 998244353
#define MOD2 1000000007
#define INV_10 299473306
#define INF 1000000001
#define PI 3.14159265358979323846
using namespace std;
int n;
vector<pair<int, int> >v;
bool compare(pair<int, int>a, pair<int, int>b)
{
	if(a.second != b.second)
		return a.second < b.second;
	return a.first < b.first;
}
void init(int N, int A[], int B[]) {
	n=N;
	for(int i = 0; i < n; i++)
		v.push_back(make_pair(A[i], B[i]));
	sort(v.begin(), v.end(), compare);
}

int can(int M, int K[]) {
	sort(K, K+M);
	int idx=n-1;
	priority_queue<int>pq;
	for(int i = M-1; i >= 0; i--)
	{
		int cu=0;
		while(idx >= 0 && v[idx].second >= K[i])
		{
			pq.push(v[idx].first);
			idx--;
		}
		while(!pq.empty() && cu < K[i])
		{
			if(pq.top() <= K[i])
				cu++;
			pq.pop();
		}
		if(cu!=K[i])
			return 0;
	}
	return 1;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB Output is correct
2 Correct 0 ms 256 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 256 KB Output is correct
5 Correct 1 ms 256 KB Output is correct
6 Correct 1 ms 384 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Correct 1 ms 256 KB Output is correct
9 Correct 1 ms 384 KB Output is correct
10 Correct 1 ms 256 KB Output is correct
11 Correct 0 ms 256 KB Output is correct
12 Correct 1 ms 384 KB Output is correct
13 Correct 1 ms 384 KB Output is correct
14 Correct 1 ms 384 KB Output is correct
15 Correct 1 ms 256 KB Output is correct
16 Correct 1 ms 384 KB Output is correct
17 Correct 1 ms 384 KB Output is correct
18 Correct 1 ms 384 KB Output is correct
19 Correct 1 ms 256 KB Output is correct
20 Correct 1 ms 256 KB Output is correct
21 Correct 1 ms 256 KB Output is correct
22 Correct 1 ms 256 KB Output is correct
23 Correct 1 ms 256 KB Output is correct
24 Correct 1 ms 256 KB Output is correct
25 Correct 1 ms 256 KB Output is correct
26 Correct 1 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 37 ms 4084 KB Output is correct
2 Correct 35 ms 3948 KB Output is correct
3 Correct 27 ms 3448 KB Output is correct
4 Correct 37 ms 4596 KB Output is correct
5 Correct 18 ms 3064 KB Output is correct
6 Correct 16 ms 3064 KB Output is correct
7 Correct 19 ms 3064 KB Output is correct
8 Correct 18 ms 3064 KB Output is correct
9 Correct 17 ms 3828 KB Output is correct
10 Correct 14 ms 3444 KB Output is correct
11 Correct 14 ms 3444 KB Output is correct
12 Correct 15 ms 3572 KB Output is correct
13 Correct 24 ms 3700 KB Output is correct
14 Correct 23 ms 3700 KB Output is correct
15 Correct 34 ms 3956 KB Output is correct
16 Correct 34 ms 3952 KB Output is correct
17 Correct 22 ms 3444 KB Output is correct
18 Correct 22 ms 3444 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 3266 ms 4896 KB Output is correct
2 Correct 3775 ms 4904 KB Output is correct
3 Execution timed out 4064 ms 4660 KB Time limit exceeded
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 4074 ms 19696 KB Time limit exceeded
2 Halted 0 ms 0 KB -