def getBin(stringlen, conseclen):
i = 0
per = 0
bit = []
while(i < stringlen):
if(i<conseclen - 1):
bit += [2**(i+1)]
elif(i==conseclen - 1):
bit += [(2**(i+1)) - 1]
else:
x = 1
b = 0
while(x<=conseclen):
b += bit[i-x]
x += 1
bit += [b]
i += 1
per = (1.0 -(bit[i-1]/2**i)) * 100
return per
def getPercents(upto,percent):
r = 1
strlen = []
c = []
s = 1
points = []
while(r<=upto):
while(getBin(s,r) < percent):
s += 1
strlen += [s]
c += [r]
r += 1
v = 0
while(v < len(c)):
points += [(c[v] , strlen[v])]
v += 1
return points