Pagini recente » Cod sursa (job #317348) | Cod sursa (job #2109310) | Cod sursa (job #1817358) | Cod sursa (job #2096036) | Cod sursa (job #1503230)
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
const int NMax = 6000005;
const int oo = 2000000000;
int Max = -oo,Begin=1, End, Start, Finish;
int DP[NMax];
int N;
void ReadandSolve()
{
fin>>N;
for(int i = 1; i<=N; ++i)
{
int X;
fin>>X;
if(X > X + DP[i-1])
{
DP[i] = X;
Begin = i;
End = i;
}
else
{
DP[i] = DP[i-1] + X;
End = i;
}
if(DP[i] > Max)
{
Max = DP[i];
Start = Begin;
Finish = End;
}
}
}
void Print()
{
fout<<Max<<" "<<Start<<" "<<Finish<<"\n";
}
int main()
{
ReadandSolve();
Print();
return 0;
}