본문 바로가기

알고리즘, 문제 풀이기록

#26: 이항계수

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

import math

N, K = map(int, input().split())

if 0 <= K <= N:
    print(math.factorial(N) // (math.factorial(K) * math.factorial(N - K)))

else:
    print(0)

 

먼저 이항계수 공식을 구글링을 통해 찾아본 결과, 팩토리얼 구현에 중점을 둬야될 문제라고 판단했다. 그리고 파이썬으로 팩토리얼을 구현한 재귀 코드를 이해하려고 하였고, 그것을 본 문제에 적용하기 위해 팩토리얼 함수를 구현하려고 시도하였다. 하지만 번번이 오류만 나다가 import math를 하는 방법이 있음을 알고 그렇게 하였다. 박현준 튜터님의 import문 써도 된단 댓글이 기억이 났기 때문이다. 그리고 if문의 범위값의 경우 and를 활용했었는데 파이참이 자체적으로 바로 연결해서 써도 된다고 하여 그렇게 하였다.

통과!

'알고리즘, 문제 풀이기록' 카테고리의 다른 글

#28: 균형잡힌 세상  (0) 2021.06.22
#27: 다리놓기  (0) 2021.06.22
#25: 최소공배수  (0) 2021.06.21
#24: 괄호  (0) 2021.06.21
#23: 제로  (0) 2021.06.21