BJ 11050 이항 계수 1

https://www.acmicpc.net/problem/11050

이항 계수(조합)의 정의

원소의 개수가 n인 집합에서 k개의 원소를 순서에 상관없이 택하는 경우의 수

(nk)=n!(nk)! k!{n \choose k} = \frac{n!}{(n-k)!\ k!}

팩토리얼의 재귀적 구현

factorial(n)={n×factorial(n1)n21n=0,1\rm{factorial}(n)=\begin{cases} n\times \rm{factorial}(n-1) & n \ge 2 \\ 1 & n = 0, 1 \end{cases}

코드

def factorial(n):
    if n <= 1:
        return 1
    return n * factorial(n-1)

n, k = map(int, input().split())
print(factorial(n) // (factorial(n-k) * factorial(k)))

좋은 웹페이지 즐겨찾기