Cod sursa(job #3195151)
Utilizator | Nemtisor 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;
}