# |
Submission time |
Handle |
Problem |
Language |
Result |
Execution time |
Memory |
285803 |
2020-08-29T15:41:43 Z |
DystoriaX |
Teams (IOI15_teams) |
C++14 |
|
4000 ms |
25976 KB |
#include "teams.h"
#include <iostream>
#include <vector>
#include <algorithm>
#include <queue>
#include <bitset>
// #include <numeric>
using namespace std;
int n;
vector<int> st[100010], en[100010];
int pt[100010];
bitset<100010> act;
vector<int> a, b;
void init(int N, int A[], int B[]) {
n = N;
a.resize(1), b.resize(1);
a.insert(a.end(), A, A + n);
b.insert(b.end(), B, B + n);
for(int i = 0; i < n; i++) st[A[i]].emplace_back(i + 1), en[B[i]].emplace_back(i + 1);
}
int can(int M, int K[]) {
long long sum = 0;
for(int i = 0; i < M; i++) sum += K[i];
if(sum > n) return 0;
for(int i = 1; i <= n; i++) pt[i] = 0, act[i] = 0;
for(int i = 0; i < M; i++) pt[K[i]] += K[i];
priority_queue<pair<int, int> > pq;
for(int i = 1; i <= n; i++){
for(auto &k : st[i]) pq.push({-b[k], k}), act[k] = true;
while(pt[i] && !pq.empty()){
int x = pq.top().second;
pq.pop();
if(!act[x]) continue;
act[x] = false;
pt[i]--;
}
if(pt[i] && pq.empty()) return 0;
for(auto &k : en[i]) act[k] = false;
}
return 1;
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
4 ms |
4992 KB |
Output is correct |
2 |
Correct |
4 ms |
4992 KB |
Output is correct |
3 |
Correct |
4 ms |
4992 KB |
Output is correct |
4 |
Correct |
4 ms |
4992 KB |
Output is correct |
5 |
Correct |
4 ms |
4992 KB |
Output is correct |
6 |
Correct |
4 ms |
5120 KB |
Output is correct |
7 |
Correct |
4 ms |
4992 KB |
Output is correct |
8 |
Correct |
5 ms |
4992 KB |
Output is correct |
9 |
Correct |
4 ms |
4992 KB |
Output is correct |
10 |
Correct |
5 ms |
4992 KB |
Output is correct |
11 |
Correct |
4 ms |
4992 KB |
Output is correct |
12 |
Correct |
5 ms |
4992 KB |
Output is correct |
13 |
Correct |
5 ms |
4992 KB |
Output is correct |
14 |
Correct |
4 ms |
4992 KB |
Output is correct |
15 |
Correct |
6 ms |
4992 KB |
Output is correct |
16 |
Correct |
4 ms |
4992 KB |
Output is correct |
17 |
Correct |
4 ms |
4992 KB |
Output is correct |
18 |
Correct |
4 ms |
4992 KB |
Output is correct |
19 |
Correct |
4 ms |
4992 KB |
Output is correct |
20 |
Correct |
4 ms |
4992 KB |
Output is correct |
21 |
Correct |
4 ms |
4992 KB |
Output is correct |
22 |
Correct |
4 ms |
4992 KB |
Output is correct |
23 |
Correct |
4 ms |
4992 KB |
Output is correct |
24 |
Correct |
4 ms |
4992 KB |
Output is correct |
25 |
Correct |
4 ms |
4992 KB |
Output is correct |
26 |
Correct |
4 ms |
4992 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
40 ms |
10624 KB |
Output is correct |
2 |
Correct |
43 ms |
10744 KB |
Output is correct |
3 |
Correct |
61 ms |
11760 KB |
Output is correct |
4 |
Correct |
52 ms |
12264 KB |
Output is correct |
5 |
Correct |
21 ms |
8960 KB |
Output is correct |
6 |
Correct |
21 ms |
8960 KB |
Output is correct |
7 |
Correct |
13 ms |
8960 KB |
Output is correct |
8 |
Correct |
13 ms |
8992 KB |
Output is correct |
9 |
Correct |
26 ms |
9972 KB |
Output is correct |
10 |
Correct |
27 ms |
9588 KB |
Output is correct |
11 |
Correct |
26 ms |
9500 KB |
Output is correct |
12 |
Correct |
27 ms |
9672 KB |
Output is correct |
13 |
Correct |
35 ms |
9976 KB |
Output is correct |
14 |
Correct |
41 ms |
11248 KB |
Output is correct |
15 |
Correct |
47 ms |
12528 KB |
Output is correct |
16 |
Correct |
34 ms |
11384 KB |
Output is correct |
17 |
Correct |
26 ms |
9600 KB |
Output is correct |
18 |
Correct |
31 ms |
9468 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
102 ms |
11136 KB |
Output is correct |
2 |
Correct |
107 ms |
11000 KB |
Output is correct |
3 |
Execution timed out |
4097 ms |
12460 KB |
Time limit exceeded |
4 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Runtime error |
52 ms |
25976 KB |
Execution killed with signal 11 |
2 |
Halted |
0 ms |
0 KB |
- |