Cod sursa(job #812671)

Utilizator BogOuatuOuatu Bogdan-Ioan BogOuatu Data 14 noiembrie 2012 10:40:54
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>
using namespace std;

int v[6000003], n;
int main()
{

    int i, s, smax, st, stmax, drmax;

    ifstream fin("ssm.in");
    fin>>n;
    for(i=1;i<=n;i++)
        fin>>v[i];
    fin.close();

    smax=v[1];
    drmax=1;
    stmax=1;
    s=v[1];
    st = 1;
    if(s<0) { s=0; st = 2; }
    for(i=2;i<=n;i++)
    {
        s+=v[i];

        if(s>smax) {smax=s;stmax = st;drmax = i;}
        if(s<0) { s=0; st = i+1;}

    }

    ofstream fout("ssm.out");
    fout<<smax<<" "<<stmax<<" "<<drmax<<"\n";
    fout.close();


    return 0;
}