Pagini recente » Cod sursa (job #244525) | Cod sursa (job #1961684) | Cod sursa (job #1010340) | Cod sursa (job #571849) | Cod sursa (job #354296)
Cod sursa(job #354296)
#include<stdio.h>
FILE *f,*s;
int n,i,sum1,sum2,max1,max2,inc1,inc2,sfr1,sfr2,x1,x2,v[200005];
int main()
{
f=fopen("buline.in","r");
s=fopen("buline.out","w");
fscanf(f,"%d",&n);
for(i=1;i<=n;i++)
{
int x,y;
fscanf(f,"%d %d",&x,&y);
if(y==0)
x*=(-1);
v[i]=v[i-1]+x;
}
for(i=1;i<=n;i++)
{
if(v[i]-max1<sum1||i==1)
{
sum1=v[i]-max1;
}
if(v[i]>max1)
{
max1=v[i];
}
if(v[i]-max2>sum2||i==1)
{
sum2=v[i]-max2;
inc2=x2+1;
sfr2=i-inc2;
}
if(v[i]<max2)
{
max2=v[i];
x2=i;
}
}
if(sum2>v[n]-sum1)
fprintf(s,"%d %d %d",sum2,inc2,sfr2);
else
fprintf(s,"%d %d %d",v[n]-sum1,0,0);
fclose(s);
return 0;
}