Cod sursa(job #849665)

Utilizator Barcau_EmanuelBarcau Emanuel Barcau_Emanuel Data 7 ianuarie 2013 14:48:17
Problema Subsecventa de suma maxima Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include<fstream>
using namespace std;
long long int n,a[6000000],i,ic,sc,pc,sf,max1;
int main ()
{
    ifstream f("ssm.in");
    ofstream g("ssm.out");
    f>>n;
    for(i=1;i<=n;i++)
    f>>a[i];
    max1=-20000000;
    sc=-1;
    ic=0; sf=0;
    pc=0;
    for(i=n-1;i>=1;i--)
    {
        if(sc>=0) { sc=sc+a[i]; }
        else { sc=a[i]; pc=i; }
        if(sc>max1) {max1=sc; ic=pc; sf=i; }
    }
    g<<max1<<" "<<sf<<" "<<ic;
}