제출 #1324857

#제출 시각아이디문제언어결과실행 시간메모리
1324857xyz7577Shortcut (IOI16_shortcut)C++17
23 / 100
2094 ms400 KiB
#include <bits/stdc++.h>
using namespace std;
using int64 = long long;
int64 find_shortcut(int n, vector<int> l, vector<int> d, int c) {
    vector<int64> pos(n);
    for (int i=1;i<n;i++) pos[i]=pos[i-1]+l[i-1];
    int64 ans=LLONG_MAX;
    for (int i=0; i<n;i++) {
        for (int j=i+1;j<n;j++) {
            int64 diam=0;
            for (int x=0; x<n; x++) {
                int64 max_dist=0;
                for (int y=0; y<n; y++) {
                    if (y==x) continue;
                    int64 normal=llabs(pos[x]-pos[y]);
                    int64 via1=llabs(pos[x]-pos[i])+c+llabs(pos[y]-pos[j]);
                    int64 via2=llabs(pos[x]-pos[j])+c+llabs(pos[y]-pos[i]);
                    int64 best=min(normal, min(via1, via2));
                    int64 dist=best+d[x]+d[y];
                    max_dist=max(max_dist,dist);
                }
                diam=max(diam, max_dist);
            }
            ans=min(ans, diam);
        }
    }
    return ans;
}

컴파일 시 표준 에러 (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...