# Python program for OEIS A051652 # Michael S. Branicky, Feb 27 2021 # dedicated to Lydia on her half birthday from sympy import nextprime, prevprime from time import time time0 = time() PRINTEVERY = 10**9 printat = PRINTEVERY A051652 = {0:2, 2:0} p, q, r = 0, 2, 3 def record(idx, m): A051652[idx] = m print("FOUND", idx, m, time()-time0) print(" ", A051652) alst = [] with open('b051652.txt', 'w') as f: for i in range(max(A051652)+1): if i in A051652: ai = A051652[i] else: ai = '?' alst.append(ai) f.write(f"{i} {ai}\n") print(" ", alst) while True: gap1 = q - p quot1, rem1 = divmod(gap1, 2) for cq in range(quot1+1): if cq not in A051652: m = p + cq idx = cq record(idx, m) gap2 = min(q - p, r - q) if gap2 not in A051652: m = q idx = gap2 record(idx, m) if p >= printat: print("...", p, time()-time0) printat += PRINTEVERY p, q, r = q, r, nextprime(r)