Pagini recente » Cod sursa (job #1685518) | Cod sursa (job #483766) | Cod sursa (job #1913640) | Cod sursa (job #1777883) | Cod sursa (job #354295)
Cod sursa(job #354295)
#include<stdio.h>
FILE *f,*s;
int n,i,sum1,sum2,max1,max2,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;
}
if(v[i]<max2)
{
max2=v[i];
}
}
if(sum2>v[n]-sum1)
fprintf(s,"%d %d %d",sum2,0,0);
else
fprintf(s,"%d %d %d",v[n]-sum1,0,0);
fclose(s);
return 0;
}