Cod sursa(job #1181756)
Utilizator | Data | 3 mai 2014 16:54:56 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 95 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.55 kb |
/*
Keep It Simple!
*/
#include<fstream>
using namespace std;
int N,X,Max,Current,Inc,IncF,Sf;
int main()
{
ifstream f("ssm.in");
ofstream g("ssm.out");
f >> N;
Max = -1<<30;
for(int i=1;i<=N;i++)
{
f >> X;
if(X+Current > X)
Current += X;
else
{
Current = X;
Inc = i;
}
if(Current > Max)
{
Max = Current;
IncF = Inc;
Sf = i;
}
}
g << Max << " " << IncF << " " << Sf;
}