Cod sursa(job #2314920)

Utilizator AnnaLipianuLipianu Ana AnnaLipianu Data 9 ianuarie 2019 11:37:31
Problema Subsecventa de suma maxima Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <cstdio>
using namespace std;
int main()
{
    long long n,x,s,pi,pmi,pf,pmf,i,sm;
    freopen("ssm.in","r",stdin);
    freopen("ssm.out","w",stdout);
    scanf("%lld%lld",&n,&x);
    if(x>0)
		s=x;
	else
		s=0;
	sm=s;
	pi=pf=pmi=pmf=1;
	for(i=2;i<=n;i++)
	{
		scanf("%lld",&x);
		if(s+x>0)
		{
			s=s+x;
			pf++;
		}
		else
		{
			s=0;
			pi=i+1;
			pf=i;
		}
		if(s>sm)
		{
			sm=s;
			pmi=pi;
			pmf=pf;
		}
	}
	printf("%lld %lld %lld",sm,pmi,pmf);
    return 0;
}