Advertisement
JoelSjogren

Untitled

Aug 29th, 2016
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.30 KB | None | 0 0
  1. def roll_of_powers_big(a, b):
  2.     if a < 2: return 0, 1
  3.     m = min(i for i in range(b[0]+b[1]) if a**i >= b[0])
  4.     n = 0
  5.     d = b[1] // gcd(b[1], a**m % b[1])
  6.     c = gcd(d, a % b[1])
  7.     while c != 1:
  8.         d = d // c
  9.         c = gcd(d, a % b[1])
  10.         n += 1
  11.     return m + n, euler_phi(d)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement