BOJ - 1010

주의·2024년 1월 29일
0

boj

목록 보기
136/214

백준 문제 링크
다리 놓기

❓접근법

  1. 조합을 사용하면 된다. ( 다리가 겹칠 수 없으므로 )
    예를 들어, 서쪽이 2개이고 동쪽이 5개일 때
    서쪽에서는 동쪽 5개의 다리 중 2개를 선택할 수 있으므로 5C2의 경우의 수가 가능하다.
  2. 팩토리얼 점화식을 이용해 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])))

0개의 댓글