반응형
https://www.acmicpc.net/problem/2407
2407번: 조합
n과 m이 주어진다. (5 ≤ n ≤ 100, 5 ≤ m ≤ 100, m ≤ n)
www.acmicpc.net
💡IDEA
조합의 개념을 알면 풀 수 있는 문제이다.
nCr = n!/(n-r)!r! 으로 나타낼 수 있는데, 팩토리얼을 재귀로 구해도 되고, DP를 사용해도 될 것 같다.
아래 코드는 그냥 반복문으로 곱하면서 답을 구하는 풀이이다.
n!/(n-r)! = n(n-1)(n-2)...(n-r+1) 임을 사용해서 먼저 구한 후, r!를 나누어준다.
📌CODE
n, m = map(int, input().split())
ans = 1
for i in range(n, n-m, -1):
ans *= i
tmp = 1
for j in range(1, m+1):
tmp *= j
print(ans//tmp)
반응형
'Algorithm > BOJ' 카테고리의 다른 글
[BOJ][python] 10830. 행렬 제곱 (0) | 2022.07.02 |
---|---|
[BOJ][python] 15666. N과 M (12) (0) | 2022.07.02 |
[BOJ][python] 9935. 문자열 폭발 (0) | 2022.06.27 |
[BOJ][python] 17070. 파이프 옮기기 1 (0) | 2022.06.27 |
[BOJ][python] 16953. A → B (1) | 2022.06.27 |