Skip to content

Instantly share code, notes, and snippets.

@dheaney
Created January 18, 2014 07:16
Show Gist options
  • Select an option

  • Save dheaney/8487332 to your computer and use it in GitHub Desktop.

Select an option

Save dheaney/8487332 to your computer and use it in GitHub Desktop.
class RSPD(object):
def __init__(self, base10):
#if base10 > 210:
# raise NotImplemented
self.values = []
self.value = str()
remainder = int()
self.primes = primes_less_than(base10)
if len(self.primes) < 4: self.primes = [2,3,5,7]
while base10 not in self.values or len(self.values) < 4:
try:
remainder = base10 % self.primes.pop(0)
except:
break
self.values.insert(0, remainder)
for value in self.values:
self.value += str(value)
def primes_less_than(n): aux = {}; return [aux.setdefault(p,p) for p in range(2, n) if 0 not in [p%d for d in aux if p>=d+d]]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment