Cod sursa(job #1558550)

Utilizator rexlcdTenea Mihai rexlcd Data 29 decembrie 2015 13:09:59
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include <iostream>
#include <fstream>

using namespace std;

int dp[6000002];
int x=1,y=1,n;

int main()
{
    ifstream f("ssm.in");
    ofstream g("ssm.out");
    f>>n;
    for(int i=1;i<=n;i++)
    {
        int val;
        f>>val;
        dp[i]=dp[i-1]+val;
    }
    int vmin=0, j=0;
    int vmax=dp[1];
    for(int i=1;i<=n;i++)
    {
        if(dp[i]-vmin>vmax)
            vmax=dp[i]-vmin, y=i, x=j+1;
        if(dp[i]<vmin)
            vmin=dp[i],j=i;
    }
    g<<vmax<<" "<<x<<" "<<y;
    f.close();
    g.close();
    return 0;
}