Pagini recente » Cod sursa (job #2192445) | Monitorul de evaluare | Cod sursa (job #902766) | Cod sursa (job #599568) | Cod sursa (job #1623657)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int v[6000000],suma[6000000],poz[6000000];
int main()
{
int n,i,sumamax=-9999999,pi,pf;
f>>n;
for(i=1;i<=n;i++)
f>>v[i];
for(i=n;i>=1;i--)
{
if(i==n)
suma[i]=v[n];
else
suma[i]=max(v[i]+suma[i+1],v[i]);
if(suma[i]>=sumamax)
{
sumamax=suma[i];
pi=i;
}
}
i=pi;
while(suma[i]>0)
{
pf=i;
i++;
}
g<<sumamax<<" "<<pi<<" "<<pf;
return 0;
}