def problem231(): n = 20000000 c = 15000000 total = 0 for m in range(n,n-c,-1): print(m) total += sum(factorize(m)) for m in range(c,1,-1): print(-m) total -= sum(factorize(m)) return total
def problem131a(): count = 0 for a in range(1,10**5): a3 = a**3 factorsOfa = factorize(a) div = divisorsFromFactors( factorsOfa + factorsOfa + factorsOfa ) for k in div: n = isSquare(a3 // k) if n and k-n >0 and isPrime(k - n): print(k-n)
def problem168(): power = 1 for n in count(1): if n > 10**100: break if n >= 10**power: print("reached ", 10**power) power += 1 if rightShift(n) % n == 0: if len(set(str(n))) != 1: print(n,factorize(rightShift(n)))
def problem303(): numbers99 = [i for i in range(999,10000,999)] n = 999 f = {} #print(g(2*9)) #print(g(2*99)) return factorize(1111222222222222222222) while len(numbers99) != 0: if isMadeOf2(n): numbersToRemove = [] for k in numbers99: if n % k == 0: print(k) numbersToRemove.append(k) f[k] = n if len(numbersToRemove) != 0: print(factorize(n)) print(gcdd(*numbers99)) for number in numbersToRemove: numbers99.remove(number) n += 999 print(f)
def problem131(): seen = 0 for m in count(2): factors = set(factorize(m)) n = m**3 for k in range(0,n,product(factors)**2): if any( k % p != 0 for p in factors): continue if k % product(factors) != 0: print(k) if (n**3 - k**3) % n**2 == 0 and isPrime((n**3 - k**3) // n**2): p = (n**3 - k**3) // n**2 if p > 10**6: return seen print(n, p, k) seen += 1
def problem216(): count = 0 for p in iPrime(): print(jacobi(( p + 1)//2, p)) if p > 100: break return for index, n in enumerate(t(100)): index += 2 #print( 2*(index)**2 -1 , n, isPrime(n), jacobi(( index + 1)//2, index)) if isPrime(n): count += 1 print("gave a prime ", jacobi(( n + 1)//2, n)) else: for p in factorize(n): print("Didn't give a prime", p,jacobi(( p + 1)//2, p)) return count