Cod sursa(job #1005296)

Utilizator iordache.bogdanIordache Ioan-Bogdan iordache.bogdan Data 4 octombrie 2013 18:35:12
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
using namespace std;

int s[6000002], n, i, maxs, minim, start, finish, poz;

int main()
{
    ifstream f("ssm.in");
    ofstream g("ssm.out");
    f>>n;
    for (i=1;i<=n;i++)
        f>>s[i];
    maxs=-2000000000;
    for(i=1;i<=n;i++)
    {
        s[i]+=s[i-1];
        if(s[i]-minim>maxs)
        {
            maxs=s[i]-minim;
            start=poz+1;
            finish=i;
        }
        if(s[i]<minim)
        {
            minim=s[i];
            poz=i;
        }
    }
    g<<maxs<<" "<<start<<" "<<finish<<"\n";
    f.close();g.close();
    return 0;
}