본문 바로가기
Algorithm

[구현/수학] 백준 11050 이항 계수 1 - Python

by jangThang 2022. 2. 2.
반응형

백준 온라인 저지

 

[ Contents ]

     

     

    1. 문제 (링크 참조)

     

    11050번: 이항 계수 1

    첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\))

    www.acmicpc.net

     

     

     

    2. 문제 풀이

    nCk = n! / (k!(n-k)!

     조합(Combination) = 이항계수를 구하는 문제입니다.

     

    2022.01.19 - [Algorithm] - [Algorithm] 단골 1번 문제, 구현 / 수학

     

    [Algorithm] 단골 1번 문제, 구현 / 수학

    [ Contents ] 1. 구현  단순히 '구현'만 하면 되는 문제 유형입니다. 문제를 이해하고 입력에 맞춰 적절한 출력만 하면 됩니다. 특별한 알고리즘이나 프로그래밍적 기법 없이, 단순 제어문만 사용하

    star7sss.tistory.com

      직접 수식을 구현하셔도 좋고, math 라이브러리를 이용하셔도 좋습니다.

     

     

     

    3. 코드

    import sys
    input = sys.stdin.readline
    
    N, K = map(int, input().split())
    res = 1
    
    # n!/(n-k)!
    for i in range(K):
        res *= (N-i)
    
    # /k!
    for j in range(K):
        res //= (K-j)
    print(res)

     저는 직접 수식을 구현했습니다. 

     

     

    import math
    math.comb(N, K)

     math 라이브러리를 이용하시면 더 간단하게 구현할 수 있습니다.

     

    반응형

    댓글