Cod sursa(job #503660)

Utilizator gegeadDragos Gegea gegead Data 24 noiembrie 2010 11:20:33
Problema Buline Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<fstream>
int a[400001];
using namespace std;
ifstream in("buline.in");
ofstream out("buline.out");


int main()
{
	int s,p,x,l,ml,mp,max=-10001,n,i;
	in>>n;
	for(i=1;i<=n;++i)
	{
		in>>a[i];
		in>>x;
		if(x==0)
			a[i]=-a[i];
	}
	for(i=n+1;i<=2*n;++i)
		a[i]=a[i-n];
	p=1;
	l=0;
	s=0;
	for(i=1;i<=2*n;++i)
	{
		if(s<0||l==n)
		{
			s=0;
			p=i%n;
			l=0;
		}
		s=s+a[i];
		++l;
		if(s>max)
		{
			max=s;
			mp=p;
			ml=l;
		}
	}
	out<<max<<" "<<mp<<" "<<ml;
	return 0;
}