Cod sursa(job #632686)
| Utilizator | Data | 12 noiembrie 2011 00:33:34 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 35 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.46 kb |
#include<fstream>
#define MAX 6000000
int S[MAX];
using namespace std;
int main()
{
int N,i,j,s,maxs,st,dr;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
fin>>N;
for(i=0;i<N;i++)
fin>>S[i];
maxs=(int)-2e9;
for(i=0;i<N;i++)
{
s=0;
for(j=i;j<N;j++)
{
s+=S[j];
if(s>maxs)
{maxs=s;st=i;dr=j;}
}
}
fout<<maxs<<" "<<st+1<<" "<<dr+1;
fin.close(),fout.close();
return 0;
}
