Cod sursa(job #1547279)
Utilizator | Data | 9 decembrie 2015 10:31:09 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
#include <iostream>
#include <fstream>
long n,l[6000001],k,Max,p,u,first;
using namespace std;
int main()
{
ifstream f("ssm.in");
f>>n;
f>>k;
l[1]=k;
first=1;
for(int i=2;i<=n;i++)
{
f>>k;
if(l[i-1]>0)
l[i]=l[i-1]+k;
else
l[i]=k,first=i;
if(l[i]>Max)
Max=l[i],p=first,u=i;
}
ofstream g("ssm.out");
g<<Max<<" "<<p<<" "<<u;
return 0;
}