Submission #45951

#TimeUsernameProblemLanguageResultExecution timeMemory
45951sorry_BenqBuilding Bridges (CEOI17_building)C++17
30 / 100
3050 ms3392 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; int w[100005]; ll h[100005]; ll dp[100005]; ll res = 0; int main(){ int N; cin >> N; for (int i = 0; i < N; i++){ cin >> h[i]; } for (int i = 0; i < N; i++){ cin >> w[i]; res += w[i]; w[i] = -w[i]; } dp[0] = w[0]; for (int i = 1; i < N; i++){ dp[i] = 1e16; for (int j = 0; j < i; j++){ dp[i] = min(dp[j] + w[i] + (h[i] - h[j])*(h[i] - h[j]), dp[i]); } } cout << res + dp[N - 1] << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...