N,K=map(int,input().split())
L=[0]*1001
product=1
for i in range(1001):
L[i]=product
product*=(i+1)
print( (L[N]//(L[K]*L[N-K]))%10007)
📌 문제에 어떻게 접근할 것인가?
단순히 이항계수 값을 구하는 문제이다. 이때 값은 으로 나타낼 수 있다.
굳이 여러번 팩토리얼 값을 구하지말고 리스트 L 을 만들어 주어서 1000 까지 팩토리얼 값을 미리 만들어 준다.
그리고 값과 , 값을 리스트에서 꺼내 계산하면 최대 1000번의 연산으로 모든 값을 구할수 있다.
✅ 코드에서 주의해야할 부분