Cod sursa(job #984093)
| Utilizator | Data | 13 august 2013 15:12:54 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 85 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.52 kb |
using namespace std;
#include<fstream>
ifstream eu("ssm.in");
ofstream tu("ssm.out");
#define Nmax 6000000
int V[Nmax];
int main()
{
int N,S=0,maxim=-2000,b,begin,end;
eu>>N;
for(int i=1;i<=N;i++)
eu>>V[i];
for(int i=1;i<=N;i++)
{
if(S+V[i]>=V[i])
S=S+V[i];
else
{
S=V[i];
b=i;
}
if(S>maxim)
{
maxim=S;
begin=b;
end=i;
}
}
tu<<maxim<<" "<<begin<<" "<<end;
return 0;
}