mfgnik

Untitled

Jun 12th, 2020
1,089
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.60 KB | None | 0 0
  1. def factorization(number):
  2.     primes = []
  3.     divisor = 2
  4.     while divisor * divisor < number:
  5.         if number % divisor == 0:
  6.             degree = 1
  7.             while number % divisor == 0:
  8.                 number //= divisor
  9.                 degree += 1
  10.             primes.append([divisor, degree])
  11.     if number > 1:
  12.         primes.append([number, 1])
  13.     return primes
  14.  
  15.  
  16. def degrees(num_list):
  17.     res = 1
  18.     for number, degree in num_list:
  19.         res *= 2 * degree + 1
  20.     res = (res - 1) // 2
  21.     return res
  22.  
  23.  
  24. n = int(input())
  25. factor = factorization(n)
  26. print(degrees(factor))
Advertisement
Add Comment
Please, Sign In to add comment