Cod sursa(job #2308553)
Utilizator | Data | 27 decembrie 2018 12:50:49 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.5 kb |
#include <fstream>
#define INT_MIN -2147483647
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int main()
{
int N,nr,S=0,Sm=INT_MIN,im,sm,ic=1;
in>>N;
for(int i=1;i<=N;i++)
{
in>>nr;
if(nr>S+nr)
{
ic=i;
S=nr;
}
else
{
S+=nr;
}
if(S>Sm)
{
Sm=S;
im=ic;
sm=i;
}
}
out<<Sm<<" "<<im<<" "<<sm;
}