Raymond Hettinger <[email protected]> added the comment:
Also, it would help Serhiy's divide and conquer algorithm if the fast cases
included the sides of Pascal's triangle rather than just the top:
if n < TableSize and k < limits[n]:
return comb_small(n, k)
return comb_slow(n, k)
Build the table like this:
TableSize = 101
limits = bytearray(TableSize)
for n in range(0, TableSize):
for k in range(0, n+1):
if comb(n, k) != comb_small(n, k):
break
else:
k += 1
limits[n] = k
----------
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue37295>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com