Submission #295943

# Submission time Handle Problem Language Result Execution time Memory
295943 2020-09-10T06:28:15 Z miss_robot Teams (IOI15_teams) C++14
34 / 100
4000 ms 44276 KB
#include <bits/stdc++.h>
#include "teams.h"

#pragma GCC optimize("O3")

using namespace std;

const int MAXN = 5e5;
int n;
tuple<int, int, int> a[MAXN];
pair<int, int> b[MAXN];

void init(int N, int A[], int B[]){
	n = N;
	for(int i = 0; i < n; i++) a[i] = {A[i], B[i], i}, b[i] = {B[i], i};
	sort(a, a+n), sort(b, b+n);
}

int can(int M, int K[]){
	sort(K, K+M);
	int pa = 0, pb = 0, pk = 0;
	set< pair<int, int> > q;
	while(pk < M){
		while(pa < n && get<0>(a[pa]) <= K[pk]) q.insert({get<1>(a[pa]), get<2>(a[pa])}), pa++;
		while(pb < n && b[pb].first < K[pk]) q.erase(b[pb]), pb++;
		if((int)q.size() < K[pk]) return 0;
		while(K[pk]--) q.erase(q.begin());
		pk++;
	}
	return 1;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 384 KB Output is correct
6 Correct 1 ms 384 KB Output is correct
7 Correct 2 ms 384 KB Output is correct
8 Correct 1 ms 384 KB Output is correct
9 Correct 1 ms 384 KB Output is correct
10 Correct 1 ms 384 KB Output is correct
11 Correct 0 ms 384 KB Output is correct
12 Correct 2 ms 384 KB Output is correct
13 Correct 2 ms 384 KB Output is correct
14 Correct 2 ms 384 KB Output is correct
15 Correct 2 ms 384 KB Output is correct
16 Correct 2 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 384 KB Output is correct
20 Correct 1 ms 384 KB Output is correct
21 Correct 1 ms 384 KB Output is correct
22 Correct 1 ms 384 KB Output is correct
23 Correct 1 ms 384 KB Output is correct
24 Correct 1 ms 384 KB Output is correct
25 Correct 1 ms 384 KB Output is correct
26 Correct 1 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 27 ms 4284 KB Output is correct
2 Correct 28 ms 4224 KB Output is correct
3 Correct 65 ms 8568 KB Output is correct
4 Correct 29 ms 4856 KB Output is correct
5 Correct 40 ms 3840 KB Output is correct
6 Correct 41 ms 3960 KB Output is correct
7 Correct 27 ms 3840 KB Output is correct
8 Correct 28 ms 3840 KB Output is correct
9 Correct 38 ms 8704 KB Output is correct
10 Correct 44 ms 8320 KB Output is correct
11 Correct 44 ms 8312 KB Output is correct
12 Correct 41 ms 8056 KB Output is correct
13 Correct 57 ms 6784 KB Output is correct
14 Correct 61 ms 8696 KB Output is correct
15 Correct 30 ms 4728 KB Output is correct
16 Correct 29 ms 4224 KB Output is correct
17 Correct 49 ms 5624 KB Output is correct
18 Correct 48 ms 5496 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 33 ms 4984 KB Output is correct
2 Correct 34 ms 4984 KB Output is correct
3 Execution timed out 4046 ms 9244 KB Time limit exceeded
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 163 ms 22264 KB Output is correct
2 Correct 164 ms 22264 KB Output is correct
3 Execution timed out 4043 ms 44276 KB Time limit exceeded
4 Halted 0 ms 0 KB -