# |
Submission time |
Handle |
Problem |
Language |
Result |
Execution time |
Memory |
15706 |
2015-07-16T02:14:02 Z |
gs14004 |
Holiday (IOI14_holiday) |
C++14 |
|
5000 ms |
2644 KB |
#include"holiday.h"
#include <cstdio>
#include <queue>
using namespace std;
typedef long long lint;
priority_queue<int, vector<int>, greater<int> > pq;
int opt[100005];
long long int findMaxAttraction(int n, int start, int d, int attraction[]) {
lint ret = 0;
int beforeMax = 0;
for(int i=0; i<=start; i++){
lint cret = 0;
lint pcret = 0;
int pos = 0;
for(int j=i; j<start; j++){
pq.push(attraction[j]);
cret += attraction[j];
}
for(int j=start; j<n; j++){
pq.push(attraction[j]);
cret += attraction[j];
while(!pq.empty() && (int)pq.size() > d - (j - i + min(j - start, start - i) )){
cret -= pq.top();
pq.pop();
}
if(j >= beforeMax && cret > pcret){
pcret = cret;
beforeMax = j;
}
}
while(!pq.empty()) pq.pop();
cret = 0;
for(int j=i; j<=beforeMax; j++){
pq.push(attraction[j]);
cret += attraction[j];
while(!pq.empty() && j >= start && (int)pq.size() > d - (j - i + min(j - start, start - i) )){
cret -= pq.top();
pq.pop();
}
}
ret = max(ret, cret);
while(!pq.empty()) pq.pop();
}
return ret;
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
1864 KB |
Output is correct |
2 |
Correct |
0 ms |
1872 KB |
Output is correct |
3 |
Correct |
0 ms |
1868 KB |
Output is correct |
4 |
Correct |
0 ms |
1872 KB |
Output is correct |
5 |
Correct |
0 ms |
1864 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
31 ms |
2640 KB |
Output is correct |
2 |
Correct |
16 ms |
2644 KB |
Output is correct |
3 |
Correct |
33 ms |
2640 KB |
Output is correct |
4 |
Correct |
21 ms |
2640 KB |
Output is correct |
5 |
Correct |
34 ms |
2252 KB |
Output is correct |
6 |
Correct |
11 ms |
2000 KB |
Output is correct |
7 |
Correct |
20 ms |
2256 KB |
Output is correct |
8 |
Correct |
19 ms |
2252 KB |
Output is correct |
9 |
Correct |
7 ms |
2000 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
787 ms |
1868 KB |
Output is correct |
2 |
Correct |
516 ms |
1868 KB |
Output is correct |
3 |
Correct |
617 ms |
1872 KB |
Output is correct |
4 |
Correct |
314 ms |
1864 KB |
Output is correct |
5 |
Correct |
526 ms |
1864 KB |
Output is correct |
6 |
Correct |
4 ms |
1868 KB |
Output is correct |
7 |
Correct |
10 ms |
1868 KB |
Output is correct |
8 |
Correct |
24 ms |
1864 KB |
Output is correct |
9 |
Correct |
31 ms |
1872 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Execution timed out |
5000 ms |
2640 KB |
Program timed out |
2 |
Halted |
0 ms |
0 KB |
- |