#include #include #include #define MAX 260000 #define next(x) ( ((x)==(260000-1)) ? 0 : ((x)+1)) #define prev(x) ( ((x)>0) ? ((x)-1) : (260000-1)) int k[260000]; int z[260000]; int jo[260000]; int last; int nacteno; void init(void){ int i; k[MAX-1]=0; k[0] = 0; } int nacti(int x){ char LINE[1000]; int delka,ovl; fgets(LINE,999,stdin); sscanf(LINE,"%d %d",&delka,&ovl); if ((delka==0)){ k[x]=0; }else{ k[x]=k[prev(x)]+delka; } z[x] = k[prev(x)] ? k[prev(x)]+1 : 0; jo[x]=ovl; if ((delka==0) && (ovl==0)) return 1; return 0; } int main(void){ int n,i,j,x; int delka,ovl; int jsemna; char LINE[1000]; fgets(LINE,999,stdin); n=atoi(LINE); for (i=0;i= z[jsemna]) { ovl++; } else { break; } } else { break; } } printf("%d\n",ovl); jsemna=next(jsemna); } printf("\n"); } return 0; }