Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import math
- n = int(input())
- for g in range(n):
- a, b = map(int, input().split())
- A = a
- B = b
- ans = 0
- if a % b != 0:
- print(a)
- else:
- count = 0
- arr = []
- dl = []
- for i in range(2, int(math.sqrt(B)) + 1):
- if b % i == 0:
- arr.append(i)
- dl.append(1)
- b /= i
- while b % i == 0:
- dl[-1] += 1
- b /= i
- if b != 1:
- arr.append(int(b))
- dl.append(1)
- c = 0
- while A % arr[0] == 0:
- c += 1
- A /= arr[0]
- mn = arr[0] ** (c - dl[0] + 1)
- for i in range(1, len(arr)):
- c = 0
- while A % arr[i] == 0:
- c += 1
- A /= arr[i]
- t = arr[i] ** (c - dl[i] + 1)
- if t < mn:
- mn = t
- print(a // mn)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement