https://www.acmicpc.net/problem/11051
시간 2초, 메모리 128MB
input :
output :
수의 범위 자체가 크지 않기 때문에 팩토리얼 값을 for문을 통해 구한 다 해도 3000번의 연산이면 충분하다.
# import sys
#
# n, k = map(int, sys.stdin.readline().split())
# up, down_1, down_2 = 1, 1, 1
#
# for i in range(2, n + 1):
# up *= i
#
# for i in range(2, k + 1):
# down_1 *= i
#
# for i in range(2, n - k + 1):
# down_2 *= i
#
# ans = up // (down_1 * down_2)
# print(ans % 10007)
import sys
from math import factorial
n, k = map(int, sys.stdin.readline().split())
ans = factorial(n) // (factorial(n - k) * factorial(k))
print(ans % 10007)