#include <bits/stdc++.h>
using namespace std;
#define int long long
#define all(a) (a).begin(),(a).end()
#define rep(i, n) for(int i = 0; i < (n); i++)
const int mod = 1000000007;
signed main(){
int n;
cin >> n;
vector<int> dp(n + 3, 1e9);
vector<int> pr(n + 2, 0);
vector<int> h(n);
for (int i = 0; i < n; i++) {
cin >> h[i];
}
vector<int> w(n);
for (int i = 0; i < n; i++) {
cin >> w[i];
pr[i + 1] = pr[i] + w[i];
}
dp[0] = 0;
for (int i = 1; i < n; i++) {
for (int j = 0; j < i; j++) {
int p=h[i] - h[j];
dp[i] = min(dp[i], dp[j] + (p * p) + pr[i]-pr[j+1]);
}
}
cout << dp[n-1];
return 0;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |