Submission #1300023

#TimeUsernameProblemLanguageResultExecution timeMemory
1300023PetrixSkyline (IZhO11_skyline)C++20
100 / 100
120 ms213904 KiB
#include<iostream>
using namespace std;

#define int long long

int a[301];
int dp[301][301][301];

signed main(){
    ios_base::sync_with_stdio(false);cin.tie(NULL);
    int n,i,j,k,aux;
    cin>>n;
    for(i=1;i<=n;i++) cin>>a[i];
    for(i=0;i<=n;i++){
        for(j=0;j<=300;j++){
            for(k=0;k<=300;k++) dp[i][j][k]=1e18;
        }
    }
    dp[0][0][0]=0;
    for(i=1;i<=n;i++){
        for(j=a[i-1];j>=0;j--){
            for(k=a[i];k>=0;k--){
                aux=a[i]-k;
                dp[i][j][k]=min(min(dp[i][j][k+1]+3,dp[i][j+1][k+1]+5),min(dp[i-1][aux][j+aux]+7*aux,min(dp[i-1][0][j+aux]+5*aux,dp[i-1][0][j]+3*aux)));
            }
        }
    }
    cout<<dp[n][0][0];
}
#Verdict Execution timeMemoryGrader output
Fetching results...