Cod sursa(job #500581)

Utilizator crazzytudTudor Popa crazzytud Data 12 noiembrie 2010 15:45:27
Problema Buline Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include<stdio.h>
int v[200001];
int main()
{
	freopen("buline.in","r",stdin);
	freopen("buline.out","w",stdout);
	int s=0,lmax=0,smin=10001,pmax=0,p=0,smax=0,n,i,imax;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		scanf("%d",&v[i]);
		scanf("%d",&p);
		if(p==0)
			v[i]*=-1;
		smax+=v[i];
	}
	v[0]=v[n];
	
	p=1;
	for(i=1;i<=n;++i)
	{
		if(s>0)
		{
			s=0;
			p=i;
		}
		
		s+=v[i%n];
		
		if(s<smin)
		{
			smin=s;
			pmax=p;
			imax=i;
		}
	}
	printf("%d %d %d",smax-smin,imax+1,n-imax+pmax-1);
	return 0;
}