Cod sursa(job #2683863)

Utilizator nistor_dora_valentinaNistor Dora Valentina nistor_dora_valentina Data 12 decembrie 2020 10:40:50
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>

using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n, i, v[6000001], dp[6000001], nrmax, nr, l1, l2;
int main()
{
    fin>>n;
    for(i=1; i<=n; i++)
        fin>>v[i];
    dp[1]=v[1];
    nrmax=-10000000;
    for(i=2; i<=n; i++)
    {
        if(dp[i-1]<0)
        {
             dp[i]=v[i];
             nr=i;
        }
        else
            dp[i]=dp[i-1]+v[i];
        if(dp[i]>nrmax)
        {
            nrmax=dp[i];
            l1=nr;
            l2=i;
        }

    }
    fout<<nrmax<<" "<<l1<<" "<<l2;

    return 0;
}