Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def euler_func (n):
- result = n
- max_i = n
- i = 2
- while True:
- if n % i == 0:
- while n % i == 0:
- n //= i
- result -= result // i
- if n < i or i * i > max_i:
- break
- i += 1
- if n > 1:
- result -= result // n
- return int(result % 1000000007)
- def dummy_binomial(k, n):
- k = min(k, n - k)
- result = 1
- for i in range(1, k + 1):
- result *= (n - k + i)
- result //= i
- return result
- k, n = [int(x) for x in input().split()]
- coef = dummy_binomial(k, n)
- print(coef)
- print(euler_func(coef))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement