Cod sursa(job #2284459)

Utilizator Sams200Suciu Andrei Sams200 Data 17 noiembrie 2018 11:06:28
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.97 kb
#include <iostream>
#include <climits>
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");

int main()
{
    /*int maxi,n,v[100001],x,y,s,vmax=INT_MIN,start[100001],i;
    v[0]=0;
    f>>n;
    for(i=1;i<=n;i++)
    {
        f>>v[i];
        if(v[i-1]>0)
        {
            v[i]+=v[i-1];
            start[i]=start[i-1];
        }
        else
            start[i]=i;
        if(v[i]>vmax)
        {
            vmax=v[i];
            maxi=i;
        }
    }
    g<<vmax<<' '<<start[maxi]<<' '<<maxi;
    return 0;*/
    int startmax,maxi,n,v=0,vlast,i,start=1,vmax=INT_MIN;
    f>>n;
    for(i=1;i<=n;i++)
    {
        vlast=v;
        f>>v;
        if(vlast>0)
        {
            v+=vlast;
        }
        else
            start=i;
        if(v>vmax)
        {
            vmax=v;
            maxi=i;
            startmax=start;
        }
    }
    g<<vmax<<' '<<startmax<<' '<<maxi;
    return 0;
}