Pagini recente » Cod sursa (job #2450936) | Cod sursa (job #2254754) | Cod sursa (job #986366) | Cod sursa (job #2232390) | Cod sursa (job #2132981)
#include <stdio.h>
using namespace std;
FILE *f,*g;
int v[200004];
int main()
{
int n,i,nr,xx,li=1,lf=1,so=-999999999,si=0,lg=0,tot=0,poz;
f=fopen("buline.in","r");
g=fopen("buline.out","w");
fscanf(f,"%d",&n);
for(i=1;i<=n;i++)
{
fscanf(f,"%d %d",&v[i],&xx);
if(xx==0)
v[i]=v[i]*(-1);
v[n+i]=v[i];
}
for(i=1;i<=2*n;i++)
{
if(si<0)
{
if(i>n)
break;
si=v[i],li=i;
}
else
si+=v[i];
if(si>so&&i-li+1<=n)
{
so=si;
poz=li;
lf=i;
}
}
lg=lf-poz+1;
fprintf(g,"%d %d %d",so,poz,lg);
fclose(f);
fclose(g);
return 0;
}