Cod sursa(job #1059059)

Utilizator cioionutFMI Ionut Ciocoiu cioionut Data 16 decembrie 2013 03:27:39
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
    ifstream f("ssm.in");
    ofstream g("ssm.out");
    int i,n,s[6000000],x,j=0,m=-6000001,m2=0,k;
    f>>n;s[0]=0;
    for(i=1;i<=n;i++)
    {
        f>>x;
        s[i]=s[i-1]+x;
        if(s[i]>m) {m=s[i];j=i;}
    }
    //cout<<m<<" "<<j<<"\n";
    //for(i=1;i<=n;i++) cout<<s[i]<<" ";
    for(i=j;i>=1;i--)
    {
        m2+=s[i]-s[i-1];
        if(m2>m) {m=m2;k=i;}
    }
    g<<m<<" "<<k<<" "<<j;
    f.close();g.close();
    return 0;
}