Cod sursa(job #1997963)
Utilizator | Vasiesiu Victor Victor24 | Data | 5 iulie 2017 23:11:40 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.5 kb |
#include <fstream>
using namespace std;
int n, a[6000001], i, j, l, r, l1;
long long sma, s;
ifstream f ("ssm.in");
ofstream g ("ssm.out");
int main () {
f>>n;
for (i=1; i<=n; i++) {
f>>a[i];
}
l=1;
l1=1;
r=1;
s=a[1];
sma=a[1];
for (i=2; i<=n; i++) {
if (s<0) {
s=a[i];
l1=i;
}
else
s+=a[i];
if (s>sma)
{
sma=s;
r=i;
l=l1;
}
}
g<<sma<<" "<<l<<" "<<r;
return 0;
}