def problem35(n): cps = set() first_n_primes = set() for p in PrimeGenerators.primes_less_than(n): first_n_primes.add(p) def check_circular(p): if p in cps: return sp = str(p) length = len(sp) digits = [int(i) for i in sp] cycles = [] for i in xrange(0, length): t = combine_digits(digits) if not t in first_n_primes: return cycles.append(t) digits = rotate_left(digits) cps.update(cycles) for p in first_n_primes: check_circular(p) return cps
def problem7(n): result = 0 for p in PrimeGenerators.first_n_primes(n): result = p return result
def problem10(n): return sum(PrimeGenerators.primes_less_than(n))