Pagini recente » Cod sursa (job #2654936) | Cod sursa (job #1900012) | Cod sursa (job #2718872) | Cod sursa (job #2162872) | Cod sursa (job #2484108)
#include <fstream>
#define N 6000001
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int v[N],sum[N],lg[N];///poz-lg secventei
int n;
int main()
{
int i,j,pozi,pozf,summax;
fin>>n;
for(i=1; i<=n; i++)
fin>>v[i];
sum[1]=v[1]; lg[1]=1; summax=sum[1];
for(i=2;i<=n;i++)
{
if(sum[i-1]>0)
{sum[i]=sum[i-1]+v[i];
lg[i]=lg[i-1]+1;
}
else if(sum[i-1]<0)
{
sum[i]=v[i];
lg[i]=1;
}
else if(sum[i-1]==0)
{
sum[i]=v[i];
lg[i]=lg[i-1]+1;
}
}
for(i=1;i<=n;i++)
if(sum[i]>summax) {summax=sum[i]; pozf=i;}
pozi=pozf-lg[pozf]+1;
fout<<summax<<" "<<pozi<<" "<<pozf;
return 0;
}