Cod sursa(job #3195151)

Utilizator andrei.nNemtisor Andrei andrei.n Data 20 ianuarie 2024 10:38:08
Problema Subsecventa de suma maxima Scor 85
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
#include <bits/stdc++.h>
#define MOD 777013

using namespace std;

ifstream fin ("ssm.in");
ofstream fout ("ssm.out");

int main()
{
    int n,x,maxi=-2000000000,s=0,mi,mj,st=1;
    fin>>n;
    for(int i=0; i<n; i++)
    {
        fin>>x;
        if(s+x < 0)
        {
            if(s>maxi)
            {
                maxi=s;
                mi = st;
                mj = i;
            }
            st = i+1;
            s = 0;
        }
        else if(x<0)
        {
            if(s>maxi)
            {
                maxi=s;
                mi = st;
                mj = i;
            }
            s+=x;
        }
        else s+=x;
    }
    fout<<maxi<<' '<<mi+1<<' '<<mj;
    return 0;
}