Submission #430038

# Submission time Handle Problem Language Result Execution time Memory
430038 2021-06-16T11:06:08 Z Rouge_Hugo Holiday (IOI14_holiday) C++14
24 / 100
5000 ms 5248 KB
#include<bits/stdc++.h>
#include"holiday.h"
#define ll long long
#define fi first
#define se second
#define pb push_back
using namespace std;
multiset<ll>s;
long long int findMaxAttraction(int n, int start, int d, int a[])
{
    ll mx=0;
    if(d>=1)
        mx=a[start];
    for(int i=start; i<n; i++)
    {
        int r=d;
        ll ans=0;
        s.clear();s.insert(a[start]);ans=a[start];
        for(int j=start+1;j<=i;j++)
        {
            r-=2;
            if(r<=0)break;
            ans+=a[j];
            s.insert(a[j]);
            while(s.size()>r)
            {
                ans-=*s.begin();
                s.erase(s.begin());
            }
            mx=max(mx,ans);
        }

        for(int j=start-1; j>-1; j--)
        {
            r--;
            if(r<=0)
                break;
            s.insert(a[j]);
            ans+=a[j];
            if(r<=0)
                break;
            while(s.size()>r)
            {
                ans-=*s.begin();
                s.erase(s.begin());
            }
            mx=max(mx,ans);
        }
    }
    for(int i=start; i<n; i++)
    {
        int r=d;
        ll ans=0;
        s.clear();s.insert(a[start]);ans=a[start];
        for(int j=start+1;j<=i;j++)
        {
            r--;
            if(r<=0)break;
            ans+=a[j];
            s.insert(a[j]);
            while(s.size()>r)
            {
                ans-=*s.begin();
                s.erase(s.begin());
            }
            mx=max(mx,ans);
        }

        for(int j=start-1; j>-1; j--)
        {
            r-=2;
            if(r<=0)
                break;
            s.insert(a[j]);
            ans+=a[j];
            if(r<=0)
                break;
            while(s.size()>r)
            {
                ans-=*s.begin();
                s.erase(s.begin());
            }
            mx=max(mx,ans);
        }
    }
    return mx;
}

Compilation message

holiday.cpp: In function 'long long int findMaxAttraction(int, int, int, int*)':
holiday.cpp:25:27: warning: comparison of integer expressions of different signedness: 'std::multiset<long long int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   25 |             while(s.size()>r)
      |                   ~~~~~~~~^~
holiday.cpp:42:27: warning: comparison of integer expressions of different signedness: 'std::multiset<long long int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   42 |             while(s.size()>r)
      |                   ~~~~~~~~^~
holiday.cpp:61:27: warning: comparison of integer expressions of different signedness: 'std::multiset<long long int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   61 |             while(s.size()>r)
      |                   ~~~~~~~~^~
holiday.cpp:78:27: warning: comparison of integer expressions of different signedness: 'std::multiset<long long int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   78 |             while(s.size()>r)
      |                   ~~~~~~~~^~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 588 KB Output is correct
2 Correct 1 ms 588 KB Output is correct
3 Correct 1 ms 588 KB Output is correct
4 Correct 1 ms 588 KB Output is correct
5 Correct 1 ms 588 KB Output is correct
6 Correct 1 ms 588 KB Output is correct
7 Correct 1 ms 588 KB Output is correct
# Verdict Execution time Memory Grader output
1 Execution timed out 5062 ms 1244 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 716 KB Output is correct
2 Correct 2 ms 716 KB Output is correct
3 Correct 2 ms 844 KB Output is correct
4 Correct 926 ms 860 KB Output is correct
5 Correct 286 ms 836 KB Output is correct
6 Correct 71 ms 588 KB Output is correct
7 Correct 50 ms 676 KB Output is correct
8 Correct 36 ms 588 KB Output is correct
9 Correct 29 ms 588 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 56 ms 5248 KB Output is correct
2 Execution timed out 5082 ms 2020 KB Time limit exceeded
3 Halted 0 ms 0 KB -