Submission #870786

#TimeUsernameProblemLanguageResultExecution timeMemory
870786TurkhuuBuilding Bridges (CEOI17_building)C++17
30 / 100
3052 ms2904 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const ll inf = 1e18;
int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int n;
    cin >> n;
    vector<int> h(n), w(n);
    for (int &i : h) cin >> i;
    for (int &i : w) cin >> i;
    vector<ll> dp(n, inf);
    dp[0] = -w[0];
    for (int i = 1; i < n; i++) {
        for (int j = 0; j < i; j++) {
            dp[i] = min(dp[i], dp[j] + 1LL * (h[i] - h[j]) * (h[i] - h[j]) - w[i]);
        }
    }
    for (int i : w) dp[n - 1] += i;
    cout << dp[n - 1];
    return 6/22;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...