본문 바로가기
카테고리 없음

[백준] 11050번: 이항 계수 1 - python

by 육빔 2024. 3. 28.
728x90

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

 

11050번: 이항 계수 1

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

www.acmicpc.net

 

뭔가 코딩으로는 이렇게 구현하면 안될 것 같은데 고등학교 수학 공식을 그대로 적용한 아래 코드;

사실 손으로 풀때도 5C2 = 5 * 4 / 2 * 1 로 하는데 이항 계수 2에서는 이런식으로 안하면 시간초과가 뜨게 하지않을까 예상한다.

 

수학의 정석 내용 그대로 구현한 코드

n, k = map(int, input().split())

parent = 1
for _ in range(1, n+1):
    parent *= _

child1 = 1
for _ in range(1, n-k+1):
    child1 *= _

child2 = 1
for _ in range(1, k+1):
    child2 *= _

print(parent//child1//child2)

 

완성