Submission #942145

#TimeUsernameProblemLanguageResultExecution timeMemory
942145Nika533Shortcut (IOI16_shortcut)C++14
0 / 100
1 ms432 KiB
#pragma GCC diagnostic warning "-std=c++11" #include <bits/stdc++.h> #include "shortcut.h" #define pb push_back #define f first #define s second #define MOD 1000000007 #define flush fflush(stdout) #define all(x) (x).begin(),(x).end() #define allr(x) (x).rbegin(), (x).rend() #define pii pair<int,int> using namespace std; int n,m,T,k; long long find_shortcut(int n, vector<int> L, vector<int> D, int C) { long long ans=1e18; int pref[n+1]; pref[0]=0; for (int i=1; i<n; i++) pref[i]=pref[i-1]+L[i-1]; for (int l=0; l<n; l++) { for (int r=l+1; r<n; r++) { int LEN=0; for (int o=l; o<r; o++) LEN+=L[o]; vector<long long> dd; for (auto x:D) dd.pb(x); long long sum1=0,sum2=0; for (int i=l-1; i>=0; i--) { sum1+=L[i]; dd[l]=max(dd[l],sum1+D[i]); } for (int i=r+1; i<n; i++) { sum2+=L[i-1]; dd[r]=max(dd[r],sum2+D[i]); } long long diameter=0; for (int i=l; i<=r; i++) { for (int j=i+1; j<=r; j++) { long long len=pref[j]-pref[i]; len=min(len,LEN-len+C); len+=dd[i]+dd[j]; diameter=max(diameter,len); } } for (int i=0; i<=l; i++) { for (int j=i+1; j<=l; j++) { long long len=pref[j]-pref[i]; len+=D[i]+D[j]; diameter=max(diameter,len); } } for (int i=r; i<n; i++) { for (int j=i+1; j<n; j++) { long long len=pref[j]-pref[i]; len+=D[i]+D[j]; diameter=max(diameter,len); } } ans=min(ans,diameter); } } return ans; }

Compilation message (stderr)

shortcut.cpp:1:32: warning: '-std=c++11' is not an option that controls warnings [-Wpragmas]
    1 | #pragma GCC diagnostic warning "-std=c++11"
      |                                ^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...