Cod sursa(job #3226423)

Utilizator popescu_georgePopescu George popescu_george Data 21 aprilie 2024 13:11:42
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>
using namespace std;
ifstream F("ssm.in");
ofstream G("ssm.out");
#define Z 2048
int n,t,s,l=1,j,k,m=-2e9,i,p=Z;
char r[Z];
inline char B()
{
    if(p==Z)
        F.read(r,Z),p=0;
    return r[p++];
}
int A()
{
    int n=0,j=1;
    char c;
    for(c=B();!isdigit(c)&&c!='-';c=B());
    if(c=='-')
        j=-1,c=B();
    for(;isdigit(c);n=n*10+c-48,c=B());
    return n*j;
}
int main()
{
    for(n=A(),i=1;i<=n;++i)
        if(t=A(),s<0?s=t,l=i:s+=t,m<s)
            m=s,j=l,k=i;
    return G<<m<<' '<<j<<' '<<k,0;
}