Cod sursa(job #1416737)

Utilizator razvi99Razvan Uzum razvi99 Data 8 aprilie 2015 20:34:33
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int v[6000001],v2[6000001],n,i,sumax,m,in,sf,s;
int main()
{
    f>>n;
    for(i=1;i<=n;i++)
    {
        f>>v[i];
    }
    sumax=v[1];
    sf=0;
    for(i=1;i<=n;i++)
    {
        v2[i]=v[i];
        if(v2[i]<v2[i-1]+v[i])
            v2[i]=v2[i-1]+v[i];
        if(v2[i]>sumax)
            {sumax=v2[i];sf=i;}
    }
    s=sumax;
    for(i=sf;i>=0;i--)
    {
        s=s-v[i];
        if(s==0)
            in=i;
    }
    g<<sumax<<" "<<in<<" "<<sf;
    f.close();
    g.close();
    return 0;
}