Cod sursa(job #1590530)
Utilizator | Ovidiu Gabriel Pracsiu OvidiuMan | Data | 5 februarie 2016 11:38:29 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <fstream>
using namespace std;
int main()
{
int S,Smax,n,x,i,P,init,final1;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
fin >>n;
fin >>x; init=1; final1=1;
S=Smax=x; P=1;
if(S<0) {S=0;P=2;}
for(i=2;i<=n;i++)
{
fin>>x;
S=S+x;
if(Smax<S) {Smax=S;init=P;final1=i;}
if(S<0) {S=0;P=i+1;}
}
fout<<Smax<<" "<<init<<" "<<final1;
fin.close();
fout.close();
return 0;
}