Pagini recente » Cod sursa (job #2366138) | Cod sursa (job #1349423) | Cod sursa (job #2353710) | Cod sursa (job #17777) | Cod sursa (job #2195620)
#include <iostream>
#include<fstream>
using namespace std;
const int N=-2000000000 ;
ifstream f("ssm.in") ;
ofstream g("ssm.out") ;
long long v[6000001],s[6000001],mini[6000001],ind[6000001] ;
int main()
{
int n,i,maxi=N,poz1,poz2 ;
f>>n ;
for(i=1;i<=n;i++) f>>v[i] ;
s[1]=v[1] ;
mini[1]=0 ;
ind[1]=1 ;
for(i=2;i<=n;i++)
{
s[i]=s[i-1]+v[i] ;
if(s[i]<=mini[i-1]){
mini[i]=s[i] ;
ind[i]=i ;
}
else {
mini[i]=mini[i-1] ;
ind[i]=ind[i-1] ;
}
}
for(i=1;i<=n;i++) if(s[i]-mini[i]>maxi){
maxi=s[i]-mini[i] ;
poz1=ind[i]+1 ;
poz2=i ;
}
g<<maxi<<" "<<poz1<<" "<<poz2 ;
}