Cod sursa(job #791887)

Utilizator avramavram andrei marius avram Data 25 septembrie 2012 18:08:26
Problema Buline Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<stdio.h>
#define  dim 200010
int i,j,v[dim],s[dim],n,k,q,ii,jj,maxi;
int main()
{
	freopen("buline.in","r",stdin);
	freopen("buline.out","w",stdout);
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		scanf("%d%d",&v[i],&q);
		if(q==0)
			v[i]=v[i]-2*v[i];
	}
	for(i=n+1;i<=n+n-1;i++)
	{
		v[i]=v[i-n];
	}
	n=n+n-1;
	for(i=1;i<=n;i++)
	{
		if(v[i]+s[i-1]>v[i])
			s[i]=v[i]+s[i-1];
		else
		{
			s[i]=v[i];
			j=i;
		}
		if(s[i]>maxi)
		{
			maxi=s[i];
			ii=j;
			jj=i;
		}
	}
	printf("%d %d %d",maxi,ii,jj-ii+1);
	return 0;
}