This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
using namespace std;
long long n,k,a[1000006],mx,dp[1505],F;
int main(){
cin>>n;
a[0]=1e10;
for(k=1;k<=n;k++){
cin>>a[k];
if(a[k]>a[k-1]) F=1;
}
if(!F) cout<<a[1]*n;else{
for(k=1;k<=n;k++){
dp[k]=1e16;
mx=0;
for(int i=k;i>=1;i--){
mx=max(mx,a[i]);
dp[k]=min(dp[k],dp[i-1]+(n-i+1)*mx);
}
}
cout<<dp[n];
}}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |