Cod sursa(job #1515691)
Utilizator | Data | 2 noiembrie 2015 08:19:39 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.58 kb |
#include <fstream>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int n;
int summax = -(1 << 29),p,q;
int main()
{
int nr;
int sum = -(1 << 29);
int inceput;
in >> n;
for (int i = 1;i <= n;++i)
{
in >> nr;
if (sum < 0)
{
sum = nr;
inceput = i;
}
else sum += nr;
if (sum > summax)
{
summax = sum;
p = inceput;
q = i;
}
}
out << summax << ' ' << p << ' ' << q;
return 0;
}