Advertisement
Checosnake

Problem 2.2 incomplete 2

Oct 24th, 2016
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.92 KB | None | 0 0
  1. n = "210022"
  2. b = 3
  3. k = len(n)
  4. count = 1
  5. pattern = []
  6. string = n
  7. def reps(n, b):
  8.     def numtobase(n, b):
  9.         num = []
  10.         fin = []
  11.         f = n
  12.         while f != 0:
  13.             num.append(f % b)
  14.             f = f / b
  15.         fin = num
  16.         fin.reverse()
  17.         return fin
  18.  
  19.     ascending = [int(i) for i in n]
  20.     descending = [int(i) for i in n]
  21.  
  22.     ascending.sort()
  23.     descending.sort()
  24.     descending.reverse()
  25.  
  26.     x = 0
  27.     y = 0
  28.  
  29.     for i in range(0, len(ascending)):
  30.         y += ascending.pop() * (b ** i)
  31.         x += descending.pop() * (b ** i)
  32.  
  33.     z = numtobase((x - y), b)
  34.     while (len(z) < k):
  35.         z.insert(0, 0)
  36.     basestr = ''.join(str(e) for e in z)
  37.     return basestr
  38.  
  39. flag = True
  40. while flag:
  41.     string = reps(string,b)
  42.     print string
  43.     pattern.append(reps(string,b))
  44.     if string in pattern:
  45.         print string
  46.         flag = False
  47.     count +=1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement