Submission #1191904

#TimeUsernameProblemLanguageResultExecution timeMemory
1191904simona1230Roller Coaster Railroad (IOI16_railroad)C++20
Compilation error
0 ms0 KiB
#include "shortcut.h" #include <bits/stdc++.h> using namespace std; long long fl[200001],fr[200001]; long long p[200001]; long long ans1[200001],ans2[200001]; long long find_shortcut(int n, std::vector<int> l, std::vector<int> d, int c) { l.push_back(0); fl[0]=d[0]; ans1[0]=d[0]; for(long long i=1;i<n;i++) { fl[i]=max(l[i-1]+fl[i-1],(long long)d[i]); ans1[i]=max(ans1[i-1],fl[i-1]+l[i-1]+d[i]); } fr[n-1]=d[n-1]; ans2[n-1]=d[n-1]; for(long long i=n-2;i>=0;i--) { fr[i]=max(l[i]+fr[i+1],(long long)d[i]); //cout<<i<<"- "<<fr[i]<<endl; ans2[i]=max(ans2[i+1],fr[i+1]+l[i]+d[i]); } p[0]=l[0]; for(long long i=1;i<l.size();i++) p[i]=p[i-1]+l[i]; long long ans=1e18; for(long long i=0;i<n;i++) { //cout<<i<<": "<<ans1[i]<<" "<<ans2[i]<<endl; for(long long j=i;j<n;j++) { long long x=d[i],y=d[j]; long long all=p[j]-l[j]-p[i]+l[i]; long long curr=fl[i]+fr[j]+min((long long)c,all); for(long long z=i;z<=j;z++) { long long d1=p[z]-l[z]-p[i]+l[i]; long long d2=all-d1+c; x=max(x,min(d1,d2)+d[z]); d1=p[j]-l[j]-p[z]+l[z]; d2=all-d1+c; y=max(y,min(d1,d2)+d[z]); } if(i)curr=max(curr,fl[i-1]+l[i-1]+x); if(j!=n-1)curr=max(curr,fr[j+1]+l[j]+y); for(long long z1=i;z1<=j;z1++) { for(long long z2=z1+1;z2<=j;z2++) { long long d1=p[z2]-l[z2]-p[z1]+l[z1]; long long d2=all-d1+c; curr=max(curr,d[z1]+d[z2]+min(d1,d2)); } } curr=max(curr,ans1[i]); curr=max(curr,ans2[j]); //cout<<i<<" "<<j<<" "<<curr<<" "<<fl[i]<<" "<<fr[j]<<" "<<x<<" "<<y<<endl; ans=min(ans,curr); } } return ans; }

Compilation message (stderr)

railroad.cpp:1:10: fatal error: shortcut.h: No such file or directory
    1 | #include "shortcut.h"
      |          ^~~~~~~~~~~~
compilation terminated.
railroad.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
railroad_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~