Cod sursa(job #2373497)
Utilizator | Data | 7 martie 2019 13:48:36 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.58 kb |
#include <iostream>
#include<fstream>
#include<limits.h>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int N, sum, x, maxx, pozf, pozi, pcrt;
int main()
{
f >> N;
maxx = INT_MIN;
for(int i = 1; i <= N; i++)
{
f >> x;
if(sum >= 0)
sum += x;
else
{
sum = x;
pcrt = i;
}
if(maxx < sum)
{
maxx = sum;
pozi = pcrt;
pozf = i;
}
}
g << maxx << ' ' << pozi << ' ' << pozf;
return 0;
}