Pagini recente » Cod sursa (job #1600990) | Cod sursa (job #1320957) | Cod sursa (job #2266058) | Cod sursa (job #1215179) | Cod sursa (job #458142)
Cod sursa(job #458142)
#include <cstdio>
#define file_in "buline.in"
#define file_out "buline.out"
int n,v[2*20109];
void citire()
{
int i,x,tip;
freopen(file_in,"r",stdin);
freopen(file_out,"w",stdout);
scanf("%d", &n);
for (i=1;i<=n;++i)
{
scanf("%d %d", &x, &tip);
if (tip==0)
v[i]=-x;
else
v[i]=x;
}
for (i=n+1;i<=2*n;++i)
v[i]=v[i-n];
}
void solve()
{
int i,max,suma,poz,ind,sf;
max=0;
suma=-0x3f3f3f3f;
for (i=1;i<=2*n;++i)
{
if (suma<0)
suma=v[i],ind=i;
else
suma+=v[i];
if (max<suma && i-ind+1<=n)
{
max=suma;
poz=ind;
sf=i-ind+1;
}
}
printf("%d %d %d", max,poz,sf);
}
int main()
{
citire();
solve();
fclose(stdin);
fclose(stdout);
return 0;
}