Cod sursa(job #271928)

Utilizator ConsstantinTabacu Raul Consstantin Data 6 martie 2009 08:24:10
Problema Buline Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<stdio.h>

int sum,smax,pmax,n,i,x,ok,smin,pmin,s1,M=int(2e9),P,p1,l1,s2,p2,l2;

int main(){

freopen("buline.in","r",stdin);
freopen("buline.out","w",stdout);

scanf("%d",&n);
for(i=1;i<=n;i++)
	{scanf("%d %d",&x,&ok);
	if(!ok)
		x=(-1)*x;
	sum+=x;
	if(x>M)
		{M=x;P=i;}
	if(sum-smin>s1)
		{s1=sum-smin;p1=pmin+1;l1=i-pmin;}
	if(sum-smax<s2)
		{s2=sum-smax;p2=i+1;l2=i-pmax;}
	if(sum<smin)
		{smin=sum;pmin=i;}
	if(sum>smax)
		{smax=sum;pmax=i;
		}
	}
if(!s1)
	printf("%d %d %d",M,P,1);
else
if(s1>=(sum-s2))
	{printf("%d %d %d",s1,p1,l1);
	}
else
{if(p2>n)
	p2=p2%n;
	printf("%d %d %d",sum-s2,p2,n-l2);}
return 0;}