728x90
소스코드
import sys
n,m = map(int , sys.stdin.readline().split())
dp = [[0 for i in range(n+1)] for i in range(n+1)]
for i in range(n+1) :
for j in range(n+1) :
# 3C1 처리
if j == 1 :
dp[i][j] = i
# 3C3 처리
elif i == j :
dp[i][j] = 1
#3C0 처리
elif j == 0 :
dp[i][j] = 1
else :
dp[i][j] = dp[i-1][j-1] + dp[i-1][j]
print(dp[n][m])
.
풀이
파스칼의 삼각형을 보고 규칙성을 찾아서 dp 테이블을 작성했습니다.
문제
https://www.acmicpc.net/problem/11050
11050번: 이항 계수 1
첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\))
www.acmicpc.net
728x90
'BOJ > 다이나믹 프로그래밍' 카테고리의 다른 글
BOJ : 1010 다리놓기 (JS) (2) | 2022.12.21 |
---|---|
BOJ : 11051 이항계수2 (파이썬) (0) | 2022.12.20 |
BOJ : 2775 부녀회장이될테야 (0) | 2022.11.25 |
BOJ : 2579 계단오르기 (0) | 2022.11.25 |
BOJ : 15989 1,2,3 더하기 4 (0) | 2022.11.25 |