Cod sursa(job #1799201)
| Utilizator | Data | 5 noiembrie 2016 21:49:21 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 95 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.43 kb |
#include<fstream>
using namespace std;
ifstream cin("ssm.in");
ofstream cout("ssm.out");
int sum, n, a[6000010], rez, poz1, poz2, pozz;
int main()
{
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> a[i];
}
for (int i = 0; i < n; i++)
{
if (sum < 0)
{
pozz = i;
sum = a[i];
}
else sum = sum + a[i];
if (sum > rez)
{
rez = sum;
poz1 = pozz;
poz2 = i;
}
}
cout << rez <<" "<< poz1 + 1<< " " << poz2 + 1;
}
