Cod sursa(job #1811029)
| Utilizator | Data | 20 noiembrie 2016 19:35:52 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | gym1_emag_mediu_2016 | Marime | 0.52 kb |
#include<fstream>
#include<iostream>
#include<climits>
using namespace std;
fstream fin("ssm.in",ios::in);
fstream fout("ssm.out",ios::out);
int main()
{
int n, x, smax=INT_MIN, start, start_max, stop_max, suma=0, i;
fin>>n;
for(i=1;i<=n;i++)
{
fin>>x;
if(suma<0)
{
start=i;
suma=x;
}
else
suma= suma +x;
if (suma>smax)
{
smax=suma;
start_max=start;
stop_max=i;
}
}
fout<<smax<<" "<<start_max<<" "<<stop_max;
fin.close();
fout.close();
return 0;
}
