Cod sursa(job #2431773)
Utilizator | tudose mihai tudosemihai | Data | 20 iunie 2019 18:56:28 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.6 kb |
#include <iostream>
#include <fstream>
#include <climits>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n, x, start, stop, ind;
int s, best_s = INT_MIN;
int main()
{
fin >> n;
for(int i = 1; i <= n; ++i)
{
fin >> x;
if(s < 0)
{
s = x;
ind = i;
}
else
s += x;
if(s > best_s)
{
best_s = s;
start = ind, stop = i;
}
}
fout << best_s << " " << start << " " << stop;
return 0;
}