제출 #206381

#제출 시각아이디문제언어결과실행 시간메모리
206381TAISA_Shortcut (IOI16_shortcut)C++14
0 / 100
5 ms632 KiB
#include "shortcut.h" #include <bits/stdc++.h> using namespace std; using ll=long long; const ll INF=1LL<<60; long long find_shortcut(int n, std::vector<int> l, std::vector<int> d, int c) { vector<ll> sum(n); for(int i=0;i<n;i++){ sum[i+1]=sum[i]+l[i]; } ll mi=INF; auto dist=[&](int u,int v){return u<v?sum[v+1]-sum[u+1]:sum[u+1]-sum[v+1];}; for(int i=0;i<n;i++){ for(int j=i+1;j<n;j++){ ll ma=0; for(int k=0;k<n;k++){ for(int l=k+1;l<n;l++){ ll s=d[k]+d[l]+dist(k,l); s=min(s,dist(i,k)+dist(j,l)+c+d[k]+d[l]); ma=max(ma,s); } } mi=min(mi,ma); } } return mi; }
#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...