Cod sursa(job #2234202)

Utilizator al3xionescuIonescu Alexandru al3xionescu Data 25 august 2018 13:28:33
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include<fstream>
#include<cstdio>
#define ll long long
#define MIN 99999999999999999
#define MAX -99999999999999999
using namespace std;
ll n, ma, mi, s[6000001],i,x,pi=0,pf=1,poz;
int main(){
    freopen("ssm.in","r", stdin);
    ofstream g("ssm.out");
    scanf("%lld",&n);
    for(i=1;i<=n;i++)
    {
        scanf("%lld",&x);
        s[i]=s[i-1]+x;
    }
    mi=s[1];
    ma=s[1];
    for(i=2;i<=n;i++){
        if(ma<s[i]-mi){
            ma=s[i]-mi;
            pf=i;
            pi=poz;
        }
        if(mi>s[i]){
            mi=s[i];
            poz=i;
        }
    }
    g<<ma<<' '<<pi+1<<' '<<pf;
    return 0;
}