Cod sursa(job #1129006)
Utilizator | Data | 27 februarie 2014 19:37:13 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.62 kb |
#include <iostream>
#include <fstream>
using namespace std;
int s[7000005],n;
int main()
{
ifstream f("ssm.in");
ofstream g("ssm.out");
int i,sum = 0, b , End, x, SUM = - (1 << 31);
f >> n;
for(i = 1;i <= n; i++)
{
f >> s[i];
if(sum < 0)
{
sum = s[i];
x = i;
}
else
sum += s[i];
if(SUM < sum)
{
SUM = sum;
b = x;
End = i;
}
}
g << SUM << " " << b << " " << End;
g.close ();
return 0;
}