Cod sursa(job #2284516)

Utilizator NoNameLeftMihai Buliga Bogdan NoNameLeft Data 17 noiembrie 2018 11:22:36
Problema Subsecventa de suma maxima Scor 85
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream f("ssm.in");
ofstream g("ssm.out");

int V[6000001];
int dp[6000001];

int main()
{
    int n , i, maxi=0, start=1, stop;
    f>>n;
    for(i=1;i<=n;i++)
    {
        f>>V[i];
    }
    start=1;
    for(i=2;i<=n;i++)
    {
        if(dp[i-1]>=0)
        {
            dp[i]=V[i]+dp[i-1];
        }
        else
        {
            dp[i]=V[i];
            start=i;
        }
        if(dp[i]>maxi)
        {
            maxi=dp[i];
            stop=i;
        }
    }
    g<<maxi<<" "<<start<<" "<<stop;
    return 0;
}