def problem187(): GOAL = 10**8 m = rwh_primes2(GOAL) primes = orderedlist(m) count = 0 for p in m: if GOAL//p <= 1: break count += len(primes[p: GOAL//p]) return count
def problem44a(): #pentagonals = set(pentagonal(n) for n in range(1, 3000) if any( isPentagonal(pentagonal(n) - isPentagonal(i)) for i in range(1,n) )) from factorGenerating import orderedlist pents = iPentagonal() next(pents) pentagonals = [next(pents),next(pents)] i = 2 for p in pents: pentagonals.append(p) if pentagonals[i] + pentagonals[i-1] < p: less = orderedlist(pentagonals[0:i]) greater = set(pentagonals[i+1:]) print(pentagonals[i] - pentagonals[i-1]) for q in less[pentagonals[i+1] - pentagonals[i]:10**12]: if p - q in pentagonals[0:i] and p+q in greater: return p-q i += 1