Pagini recente » Clasament usu12 | Cod sursa (job #2898090) | Cod sursa (job #442671) | Cod sursa (job #634868) | Cod sursa (job #1946802)
#include<iostream>
int v[101];
#include<stdio.h>
using namespace std;
int main(){
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
int n,i,s,maxx,st,dr,mst,mdr,h,ci;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
s=0;
maxx=-1;
st=1;
dr=1;
h=0;
for(i=1;i<=n;i++){
if(v[i]<0)
h++;
s=s+v[i];
if(s<0){
s=0;
st=dr+1;
}
if(s==maxx){
if(dr-st+1<=mdr-mst+1){
mst=st;
mdr=dr;
}
}
if(s>maxx){
maxx=s;
mst=st;
mdr=dr;
}
dr++;
}
if(h==n){
maxx=v[1];
ci=1;
for(i=2;i<=n;i++){
if(v[i]>maxx){
maxx=v[i];
ci=i;
}
}
cout<<maxx<<" "<<ci<<" "<<ci;
}
else
cout<<maxx<<" "<<mst<<" "<<mdr;
return 0;
}