Submission #370624

#TimeUsernameProblemLanguageResultExecution timeMemory
370624wind_reaperBuilding Bridges (CEOI17_building)C++17
30 / 100
3079 ms4480 KiB
#include <bits/stdc++.h> using namespace std; const int64_t INF = 1e18; int32_t main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); int n; cin >> n; vector<int64_t> h(n+1), w(n+1); for(int i = 1; i <= n; i++) cin >> h[i]; for(int i = 1; i <= n; i++) cin >> w[i]; vector<int64_t> pref(n+1, 0); for(int i = 1; i <= n; i++) pref[i] = pref[i-1] + w[i]; vector<int64_t> dp(n+1, INF); dp[1] = 0; for(int i = 1; i <= n; i++){ for(int j = 1; j < i; j++) dp[i] = min(dp[i], dp[j] + (h[i] - h[j])*(h[i] - h[j]) + pref[i-1] - pref[j]); } cout << dp[n] << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...