백준 문제 링크
다리 놓기
- 조합을 사용하면 된다. ( 다리가 겹칠 수 없으므로 )
예를 들어, 서쪽이 2개이고 동쪽이 5개일 때
서쪽에서는 동쪽 5개의 다리 중 2개를 선택할 수 있으므로 5C2의 경우의 수가 가능하다.- 팩토리얼 점화식을 이용해 dp에 저장한 후
조합의 식을 이용해 출력하면 끝!
T = int(input())
for _ in range(T):
x, y = map(int, input().split())
dp = [0] * (y+1)
dp[0] = 1
dp[1] = 1
for i in range(2, y+1):
dp[i] = i * dp[i-1]
print(int(dp[y] / (dp[x] * dp[y-x])))