알고리즘/Dynamic programming

(파이썬 python) 백준 1010번 : 다리 놓기

Aytekin 2022. 10. 5. 15:23
728x90

조합 공식을 이용해서 풀 수 있는 문제였다.

고등학교때 이후로 머리속에서 꺼내보지 않았던 개념이라 인터넷으로 다시 조합공식을 찾아보기도 했다....하핳

펙토리얼(fac)함수를 정의하고 정의한 함수를 이용해서 조합 공식을 만들어서 풀었다.

# 1010번 : 다리놓기
# 조합(Combination)공식을 이용해서 쉽게 풀 수 있다.

t = int(input())

def fac(n):
    num = 1
    for i in range(1,n+1):
        num *= i
    return num

for _ in range(t):
    m,n = map(int,input().split())
    bridge = fac(n) // (fac(m)*fac(n-m))
    print(bridge)

 

 

728x90