Submission #128264

#TimeUsernameProblemLanguageResultExecution timeMemory
128264ekremShortcut (IOI16_shortcut)C++98
23 / 100
2029 ms504 KiB
#include "shortcut.h" #include <bits/stdc++.h> #define st first #define nd second #define mp make_pair #define pb push_back #define sol (k+k) #define sag (k+k+1) #define orta ((bas+son)/2) #define coc g[node][i] #define mod 1000000007 #define inf 1000000000000000009 #define N 1000005 using namespace std; typedef long long ll; typedef pair < int , int > ii; typedef vector < int > vi; ll n, c, x, y, ans = inf, pre[N]; vi a, d; ll bul(int i, int j){ return d[i] + d[j] + min(pre[j] - pre[i], abs(pre[x]-pre[i]) + abs(pre[y]-pre[j]) + c); } ll find_shortcut(int nn, vi l, vi dd, int cc){n = nn;c = cc; a = l;d = dd; for(int i = 0; i < n - 1; i++) pre[i + 1] = pre[i] + a[i]; for(x = 0; x < n; x++) for(y = x + 1; y < n; y++){ ll mx = 0; for(int i = 0; i < n; i++) for(int j = i + 1; j < n; j++) mx = max(mx, bul(i, j)); ans = min(ans, mx); } return ans; }
#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...