Cod sursa(job #2325595)

Utilizator daru06Daria Culac daru06 Data 22 ianuarie 2019 19:29:09
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include <fstream>

using namespace std;

int sp,mini,maxi=-2e9,imax,rez,p12;
bool ok;
int main()
{
    ifstream f("ssm.in");
    ofstream g("ssm.out");
    int p1,p2;
    p1=p2=1;
    int n,a;
    f>>n;
    for(int i=1;i<=n;i++)
        {
            f>>a;
            sp+=a;
            if(a>=0)
                ok=true;
            if(a>=maxi)
                maxi=a, imax=i;
            if(sp<mini)
                mini=sp, p1=i+1;
            else
                if(sp-mini>rez)
                rez=sp-mini, p2=i, p12=p1;

        }
    if(!ok)
        g<<maxi<<" "<<imax<<" "<<imax;
    else
        g<<rez<<" "<<p12<<" "<<p2;
    f.close();
    g.close();
    return 0;
}