Pagini recente » Cod sursa (job #490198) | Cod sursa (job #1824671) | Cod sursa (job #3196440) | Cod sursa (job #1383149) | Cod sursa (job #216514)
Cod sursa(job #216514)
#include<stdio.h>
int t[200001],s[200001],a[200001],n;
void citire()
{ int v;
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d %d",&a[i],&v);
if(v==0)
a[i]=a[i]*(-1);
}
}
int max(int x,int y)
{
if(x>y)
return x;
else
return y;
}
void solve()
{
for(int i=1;i<=n;i++)
s[i]=s[i-1]+a[i];
for(int i=1;i<=n;i++)
t[i]=max(t[i-1],s[i]);
int ss,smax;
ss=0;smax=-20001;
for(int i=1;i<=n;i++)
{
ss=t[i-1]+s[n]-s[i-1];
smax=max(smax,ss);
}
printf("%d %d %d\n",smax,smax,smax);
}
int main()
{
freopen("buline.in","r",stdin);
freopen("buline.out","w",stdout);
citire();
solve();
return 0;
}