Advertisement
Doktorkrab

Untitled

Apr 6th, 2016
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.80 KB | None | 0 0
  1. import math
  2. def is_prime(number):
  3.     for i in range(2,int(math.sqrt(number))+1):
  4.         if number%i == 0:
  5.             return False
  6.     return True
  7. n,k = map(int, input().split())
  8. counter = 0
  9. ans = []
  10. sqrt_n = int(math.sqrt(n))
  11. if k <= n:
  12.     if is_prime(k):
  13.         while n % k == 0:
  14.             n //= k
  15.             counter +=1
  16.         if counter % 2 == 1:
  17.             print(-1)
  18.             exit()
  19.         else:
  20.             stepen = k**2
  21.             for i in range(counter//2):
  22.                 ans.append(stepen)
  23. for i in range(2, sqrt_n+1):
  24.         if n % i == 0:
  25.             if i != k:
  26.                 while n % i == 0:
  27.                     n //= i
  28.                     ans.append(i)
  29.                 if n == 1:
  30.                     break
  31. if n != 1:
  32.     ans.append(n)
  33. ans.sort()
  34. print(*ans)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement