(dp) acwing 1016. Suma máxima de subsecuencia ascendente

1016. Suma máxima de subsecuencia ascendente

El enlace del título https://www.acwing.com/problem/content/1018/ El
significado del título es el siguiente
Inserte la descripción de la imagen aquí

#include<iostream>
#include<algorithm>
using namespace std;
int n;
int f[1010],a[1010];
int main(){
    
    
    cin>>n;
    for(int i=0;i<n;i++){
    
    
       cin>>a[i];
        
    }
    int res=0;
    for(int i=0;i<n;i++){
    
    
        f[i]=a[i];
        for(int j=0;j<i;j++){
    
    
            if(a[j]<a[i])
            f[i]=max(f[i],f[j]+a[i]);
        }
        res=max(res,f[i]);
    }
    cout<<res;
    return 0;
}

Supongo que te gusta

Origin blog.csdn.net/weixin_46028214/article/details/115269697
Recomendado
Clasificación