def viable(curprimes, index, max, n): prime, count = curprimes[index] cur_count = 0 for x in curprimes[:index]: cur_count += x[1] cur_count += count + 1 nextprimes = curprimes[:index] + ((prime, count + 1),) + tuple(degen_list(range(max - cur_count))) if combinations_distinct(nextprimes) < n: return False return True
def findmax(n): for x in range(1, n): dlist = degen_list(range(x)) if combinations_distinct(dlist) > n: return x