본문 바로가기

알고리즘/백준 문제풀이

백준 - 11050(이항 계수, python)

728x90

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

 

11050번: 이항 계수 1

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

www.acmicpc.net

문제 접근

  • nCk : (n! / k!(n - k)!)를 출력해주는 문제
  • 파이썬의 math에서 factorial을 import해줘도되고 factrorial을 직접 만들어도 된다.

 

 

math 라이브러리를 활용한 코드

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

 

직접 구현한 코드

def factorial(n):
    if n == 0 or n == 1:
        return 1
    else:
        return n * factorial(n-1)
    
n, k = map(int, input().split())
b = factorial(n) //(factorial(k) * factorial(n-k))
print(b)