Cod sursa(job #2556721)

Utilizator Katherine456719Swan Katherine Katherine456719 Data 25 februarie 2020 10:07:29
Problema Subsecventa de suma maxima Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int v[6000005];
int dp[6000005];
int main()
{
    int n,l,s;
    f>>n;
    for(int i=1; i<=n; i++)
        f>>v[i];
    dp[1]=v[1];
    for(int i=2; i<=n; i++)
        for(int j=1; j<=i; j++)
            if(v[i]>v[j])
            {
                dp[i]=max(dp[i-1],dp[j])+v[i];
                if(dp[i]==v[i])
                    s=i;
            }
    int p=-999999;
    for(int i=1; i<=n; i++)
        if(dp[i]>p)
        {
            p=dp[i];
            l=i;
        }
    g<<p<<" ";
    g<<s<<" "<<l;
    return 0;
}