inp=[1,0,1,1,0,0,1,1]
n=len(inp)
lohash=[-1]*2*n+[-1]
hihash=[-1]*2*n+[-1]
max=0
a=0
for i in range(0,n):
if inp[i]==1:
a=a+1
else:
a=a-1
if a==0:
lohash[a+n]=hihash[a+n]=a
if i+1>max:
max=i+1
else:
if lohash[a+n]==-1:
lohash[a+n]=i
else:
hihash[a+n]=i
if (hihash[a+n]-lohash[a+n])>max:
max=hihash[a+n]-lohash[a+n]
print max
aW5wPVsxLDAsMSwxLDAsMCwxLDFdCm49bGVuKGlucCkKbG9oYXNoPVstMV0qMipuK1stMV0KaGloYXNoPVstMV0qMipuK1stMV0KbWF4PTAKYT0wCmZvciBpIGluIHJhbmdlKDAsbik6CiAgICBpZiBpbnBbaV09PTE6CiAgICAgICAgYT1hKzEKICAgIGVsc2U6CiAgICAgICAgYT1hLTEKICAgIGlmIGE9PTA6CiAgICAgICAgbG9oYXNoW2Erbl09aGloYXNoW2Erbl09YQogICAgICAgIGlmIGkrMT5tYXg6CiAgICAgICAgICAgICBtYXg9aSsxCiAgICBlbHNlOgogICAgICAgIGlmIGxvaGFzaFthK25dPT0tMToKICAgICAgICAgICAgbG9oYXNoW2Erbl09aQogICAgICAgIGVsc2U6CiAgICAgICAgICAgIGhpaGFzaFthK25dPWkKICAgICAgICAgICAgaWYgKGhpaGFzaFthK25dLWxvaGFzaFthK25dKT5tYXg6CiAgICAgICAgICAgICAgICBtYXg9aGloYXNoW2Erbl0tbG9oYXNoW2Erbl0KcHJpbnQgbWF4