Cod sursa(job #3225896)
Utilizator | Data | 19 aprilie 2024 12:04:52 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.5 kb |
#include <fstream>
#include <climits>
using namespace std;
ifstream cin("ssm.in");
ofstream cout("ssm.out");
int x,smax,s,st,dr,start,n;
int main()
{
cin>>n;
start=1;
smax=INT_MIN;
for(int i=1;i<=n;i++){
cin>>x;
if(s+x>=x)
s+=x;
else{
start=i;
s=x;
}
if(s>smax){
st=start;
dr=i;
smax=s;
}
}
cout<<smax<<" "<<st<<" "<<dr;
return 0;
}