Cod sursa(job #2413310)

Utilizator mihnea.anghelMihnea Anghel mihnea.anghel Data 23 aprilie 2019 11:55:07
Problema Buline Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.5 kb
#include <fstream>

using namespace std;
ifstream f("buline.in");
ofstream g("buline.out");
long long n,i,x,val,poz,ii,iii,maxi,s, v[500000];

int main()
{
	f>>n;
	for (i=1; i<=n; i++) {
		f>>v[i]>>val;
		if (!val) v[i]=-v[i];
		v[i+n]=v[i];
	}
	poz=1; maxi=-2000000000;
	for (i=1; i<=2*n; i++) {
		x=v[i];
		if ( x > s+x){
			poz=i;
			s=0;
		}
		s += x;
		if (i-poz == n){
			s-=v[poz];
			poz++;
		}
		if ( s > maxi ){
			ii=poz;
			maxi=s;
			iii=i;
		}
	}
	g<<maxi<<" "<<ii<<" "<<iii-ii+1;
	return 0;
}