Submission #173108

#TimeUsernameProblemLanguageResultExecution timeMemory
173108dvdg6566Building Bridges (CEOI17_building)C++14
30 / 100
3029 ms3620 KiB
#include<bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; typedef vector<ld> vi; typedef pair<ld,ld> pi; typedef vector<pi> vpi; typedef long double ld; #define pb emplace_back #define mp make_pair #define lb lower_bound #define ub upper_bound #define All(x) x.begin(), x.end() #define SZ(x) (ll)x.size() #define f first #define s second const ll MAXN = 1e6+10; ll N,H[MAXN], E[MAXN]; ll W; ll dp[MAXN]; int main(){ cin>>N; for (ll i=1;i<=N;++i)cin>>H[i]; for (ll i=1;i<=N;++i)cin>>E[i], W += E[i]; dp[1] = -E[1]; for (int i=2;i<=N;++i){ dp[i] = 1e9; for (int j=1;j<i;++j){ dp[i] = min(dp[i], dp[j] + (H[j] - H[i]) * (H[j] - H[i]) - E[i]); } } cout<<dp[N] + W; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...