Cod sursa(job #1430671)

Utilizator iulianrotaruRotaru Gheorghe-Iulian iulianrotaru Data 8 mai 2015 18:32:52
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include<fstream>
#include<limits>
#define NMAX 6000005
using namespace std;
const int MININF=numeric_limits<int>::min();
ifstream f("ssm.in");
ofstream g("ssm.out");
long s[NMAX];
int n,i;
long long start, sum, msum, mstart, mend;
int main()
{
    f>>n;
    for(i=1; i<=n; ++i) f>>s[i];
    msum=MININF;
    start=1;
    for(i=1; i<=n; ++i)
    {
        if(sum+s[i]>=s[i]) sum+=s[i];
            else sum=s[i],start=i;
        if(sum>msum) mend=i,mstart=start,msum=sum;
    }
    g<<msum<<" "<<mstart<<" "<<mend;
    return 0;
}