#include "shortcut.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
const ll INF = 1e17;
long long find_shortcut(int n, std::vector<int> len, std::vector<int> d, int c) {
vector<ll> ps(n);
ps[0] = 0;
for (int i = 1; i < n; i++) {
ps[i] = ps[i-1] + len[i-1];
}
ll ans = INF;
int al = 0, ar = 0;
int st = 0, en = 0;
for (int l = 0; l < n; l++) {
for (int r = l+1; r < n; r++) {
ll diam = 0;
int a = 0, b = 0;
for (int i = 0; i < n; i++) {
for (int j = i+1; j < n; j++) {
ll dis = min(ps[j] - ps[i], abs(ps[l] - ps[i]) + c + abs(ps[r] - ps[j]));
diam = max(diam, dis + d[i] + d[j]);
}
}
ans = min(ans, diam);
}
}
return ans;
}
/*
int main() {
int n, c; cin >> n >> c;
vector<int> l(n-1), d(n);
for (int i = 0; i < n-1; i++) cin >> l[i];
for (int i = 0; i < n; i++) cin >> d[i];
cout << find_shortcut(n, l, d, c) << "\n";
}*/
컴파일 시 표준 에러 (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 time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |