Submission #1174669

#TimeUsernameProblemLanguageResultExecution timeMemory
1174669HappyCapybaraShortcut (IOI16_shortcut)C++17
23 / 100
2095 ms416 KiB
#include "shortcut.h" #include<bits/stdc++.h> using namespace std; #define ll long long ll find_shortcut(int n, vector<int> l, vector<int> d, int c){ vector<ll> ps(n, 0); for (int i=0; i<n-1; i++) ps[i+1] = ps[i]+l[i]; ll bsf = (1ll<<50); for (int i=0; i<n; i++){ for (int j=i+1; j<n; j++){ ll cur = 0; vector<int> v; for (int k=0; k<n; k++) v.push_back(k); /*pair<int,int> bl = {-1, -1}, br = {-1, -1}; for (int k=0; k<i; k++){ bl = max(bl, {d[k]+ps[n-1]-ps[k], k}); br = max(br, {d[k]+ps[k], k}); } v.push_back(bl.second); v.push_back(br.second); bl = {-1, -1}; br = {-1, -1}; for (int k=i; k<=j; k++){ bl = max(bl, {d[k]+ps[n-1]-ps[k], k}); br = max(br, {d[k]+ps[k], k}); } v.push_back(bl.second); v.push_back(br.second); bl = {-1, -1}; br = {-1, -1}; for (int k=j+1; k<n; k++){ bl = max(bl, {d[k]+ps[n-1]-ps[k], k}); br = max(br, {d[k]+ps[k], k}); } v.push_back(bl.second); v.push_back(br.second);*/ for (int x : v){ for (int y=0; y<n; y++){ if (y == x) continue; ll dist = d[x]+d[y]+min(abs(ps[y]-ps[x]), c+min(abs(ps[x]-ps[i])+abs(ps[y]-ps[j]), abs(ps[y]-ps[i])+abs(ps[x]-ps[j]))); cur = max(cur, dist); //cout << x << " " << y << " " << dist << endl; } } bsf = min(bsf, cur); } } return bsf; }

Compilation message (stderr)

shortcut.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
shortcut_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
#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...