Pagini recente » Cod sursa (job #2026854) | Cod sursa (job #1340477) | Cod sursa (job #411855) | Cod sursa (job #2516969) | Cod sursa (job #59712)
Cod sursa(job #59712)
#include<stdio.h>
#include<math.h>
int s, i, smax, lg, poz, lgf, pozf, n, nr;
struct ches{
int a, b;
};
ches v[400000];
int main()
{
freopen("buline.in","r",stdin);
freopen("buline.out","w",stdout);
scanf("%d",&n);
for (i=1;i<=n;i++)
scanf("%d%d",&v[i].a,&v[i].b);
for (i=n+1;i<2*n;i++){
v[i].a=v[i-n].a;
v[i].b=v[i-n].b;
}
nr=1;
s=0;
poz=1;
lg=0;
while (nr<2*n){
if (lg<n){
s+=pow(-1,v[nr].b-1)*v[nr].a;
lg++;
if (s>smax){
pozf=poz;
lgf=lg;
smax=s;
}
if (s<=0){
s=0;
lg=0;
poz=nr+1;
}
}
else {
s=0;
poz=nr+1;
lg=0;
}
nr++;
}
printf("%d %d %d\n",smax,pozf,lgf);
fclose(stdin);
fclose(stdout);
return 0;
}