# |
Submission time |
Handle |
Problem |
Language |
Result |
Execution time |
Memory |
128138 |
2019-07-10T13:00:25 Z |
Sorting |
Teams (IOI15_teams) |
C++14 |
|
4000 ms |
24404 KB |
#include <bits/stdc++.h>
using namespace std;
const int N = 5e5 + 7;
int n;
int *a, *b;
multiset<int> st;
vector<pair<int, int> > v;
void init(int _n, int *_a, int *_b){
n = _n;
a = _a;
b = _b;
for(int i = 0; i < n; i++){
v.push_back({a[i], i + 1});
v.push_back({b[i] + 1, -i - 1});
}
sort(v.begin(), v.end());
}
bool boo[N];
bool can(int m, int *k){
for(int i = 0; i < n; i++){
boo[i] = false;
}
sort(k, k + m);
int j = 0;
st.clear();
for(int i = 0; i < (int)v.size(); i++){
pair<int, int> p = v[i];
int idx;
if(p.second > 0){
idx = p.second - 1;
boo[idx] = true;
st.insert(b[idx]);
}
else{
idx = -p.second - 1;
if(boo[idx]){
st.erase(b[idx]);
boo[idx] = false;
}
}
if(i == (int)v.size() - 1 || p.first != v[i + 1].first){
while(j < m && k[j] >= p.first && (i == (int)v.size() - 1 || k[j] < v[i + 1].first)){
if(st.empty()){
return 0;
}
if((int)st.size() < k[j]){
return 0;
}
for(int r = 0; r < k[j]; r++){
boo[*st.begin()] = false;
st.erase(st.begin());
}
j++;
}
}
}
return 1;
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
256 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
5 |
Correct |
3 ms |
376 KB |
Output is correct |
6 |
Correct |
2 ms |
376 KB |
Output is correct |
7 |
Correct |
3 ms |
256 KB |
Output is correct |
8 |
Correct |
3 ms |
376 KB |
Output is correct |
9 |
Correct |
2 ms |
376 KB |
Output is correct |
10 |
Correct |
3 ms |
376 KB |
Output is correct |
11 |
Correct |
2 ms |
376 KB |
Output is correct |
12 |
Correct |
4 ms |
376 KB |
Output is correct |
13 |
Correct |
9 ms |
376 KB |
Output is correct |
14 |
Correct |
4 ms |
380 KB |
Output is correct |
15 |
Correct |
7 ms |
376 KB |
Output is correct |
16 |
Correct |
5 ms |
376 KB |
Output is correct |
17 |
Correct |
3 ms |
376 KB |
Output is correct |
18 |
Correct |
2 ms |
376 KB |
Output is correct |
19 |
Correct |
3 ms |
376 KB |
Output is correct |
20 |
Correct |
2 ms |
376 KB |
Output is correct |
21 |
Correct |
2 ms |
376 KB |
Output is correct |
22 |
Correct |
2 ms |
376 KB |
Output is correct |
23 |
Correct |
2 ms |
256 KB |
Output is correct |
24 |
Correct |
2 ms |
376 KB |
Output is correct |
25 |
Correct |
2 ms |
376 KB |
Output is correct |
26 |
Correct |
2 ms |
376 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
34 ms |
3308 KB |
Output is correct |
2 |
Correct |
33 ms |
3308 KB |
Output is correct |
3 |
Correct |
91 ms |
5160 KB |
Output is correct |
4 |
Correct |
35 ms |
3280 KB |
Output is correct |
5 |
Correct |
44 ms |
3308 KB |
Output is correct |
6 |
Correct |
43 ms |
3332 KB |
Output is correct |
7 |
Correct |
32 ms |
3308 KB |
Output is correct |
8 |
Correct |
31 ms |
3308 KB |
Output is correct |
9 |
Correct |
56 ms |
7528 KB |
Output is correct |
10 |
Correct |
53 ms |
7528 KB |
Output is correct |
11 |
Correct |
51 ms |
7408 KB |
Output is correct |
12 |
Correct |
45 ms |
7144 KB |
Output is correct |
13 |
Correct |
53 ms |
5452 KB |
Output is correct |
14 |
Correct |
68 ms |
7244 KB |
Output is correct |
15 |
Correct |
85 ms |
4712 KB |
Output is correct |
16 |
Correct |
34 ms |
3308 KB |
Output is correct |
17 |
Correct |
50 ms |
3948 KB |
Output is correct |
18 |
Correct |
53 ms |
4072 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
51 ms |
3308 KB |
Output is correct |
2 |
Correct |
53 ms |
3308 KB |
Output is correct |
3 |
Execution timed out |
4051 ms |
5184 KB |
Time limit exceeded |
4 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
235 ms |
13272 KB |
Output is correct |
2 |
Correct |
245 ms |
13524 KB |
Output is correct |
3 |
Execution timed out |
4051 ms |
24404 KB |
Time limit exceeded |
4 |
Halted |
0 ms |
0 KB |
- |