Cod sursa(job #406750)
| Utilizator | Data | 1 martie 2010 19:27:25 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.46 kb |
#include<fstream.h>
ifstream f("ssm.in");
ofstream g("ssm.out");
#define inf (1<<30)
#define ll long long
int main()
{
int N,A,Sum,p1,p2,ind,Max;
f>>N;
Max=-inf; Sum=0; ind=0;
for(int i=1;i<=N;++i)
{
f>>A;
if (Sum < 0)
Sum = A, ind=i;
else
Sum += A;
if (Max < Sum)
Max = Sum, p1=ind, p2=i;
}
g<<Max<<" "<<p1<<" "<<p2;
return 0;
}
