# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
147475 | willi19 | Holiday (IOI14_holiday) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
long long int findMaxAttraction(int n, int start, int d, int attraction[]) {
multiset<long long> s;
long long ret=0;
for(int i=0;i<(d+1)/2&&start<n;i++,start++)
{
s.insert(attraction[start]);
ret+=attraction[start];
}
long long state=ret;
d=d/2;
while(start<n&&d>0)
{
s.insert(attraction[start]);
state+=attraction[start];
while(s.size()>d)
{
state-=*(s.begin());
s.erase(s.begin());
}
ret=max(ret,state);
start++;
d--;
}
return ret;
}