Cod sursa(job #2670396)

Utilizator cyg_aidaAida Dragomirescu cyg_aida Data 9 noiembrie 2020 20:08:48
Problema Subsecventa de suma maxima Scor 80
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <fstream>

using namespace std;

ifstream cin("ssm.in");
ofstream cout("ssm.out");

int s[6000005];
int main()
{
    int i,n,a,maxi=-2000000001,mini=2000000001,m1=0,m2=0;

    cin>>n;
    for(i=1;i<=n;i++)
    {
        cin>>a;
        s[i]=s[i-1]+a;
        if(s[i]>maxi)
        {
            maxi=s[i];
            m2=i;
        }
        if(s[i]<mini)
        {
            mini=s[i];
            m1=i+1;
        }
    }
    if(0<mini)
    {
        mini=0;
        m1=1;
    }
    if(0>maxi)
    {
        m1=m2;
    }
    cout<<maxi-mini<<" "<<m1<<" "<<m2;
    return 0;
}