Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def roll_of_powers_big(a, b):
- if a < 2: return 0, 1
- m = min(i for i in range(b[0]+b[1]) if a**i >= b[0])
- n = 0
- d = b[1] // gcd(b[1], a**m % b[1])
- c = gcd(d, a % b[1])
- while c != 1:
- d = d // c
- c = gcd(d, a % b[1])
- n += 1
- return m + n, euler_phi(d)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement