728x90
분석
순열 추측하기(DFS, 파스칼 삼각형, 이항계수)
분석 이항계수 리스트 선언 풀이 """ 가장 윗줄에 1부터 N까지의 숫자, 둘째 줄부터 위의 두개를 더한 값이 저장 N: 4, 가장윗줄: 3 1 2 4 3 1 2 4 4 3 6 7 9 16 N(1~10)과 가장 밑에 있는 숫자(F)가 주어져 있
karla.tistory.com
풀이
n,k=map(int,input().split())
b=[1]*(n+1)
for i in range(1,n+1):
b[i]=b[i-1]*(n+1-i)//i
print(b[k]%10007)
import sys
input=sys.stdin.readline
n,k=map(int,input().split())
d=[[0 for j in range(n+1)] for i in range(n+1)] # dp 테이블
for i in range(0, n+1):
d[i][1]=i # i개 중에 1개를 뽑는 경우의 수 i
d[i][0]=1 # i개 중 1개도 선택하지 않는 경우의 수 1
d[i][i]=1 # i개 중에 i개를 선택하는 경우의 수 1개
for i in range(2, n+1):
for j in range(1,i): # 고르는 수의 개수가 전체 개수를 넘을 수 없음
d[i][j]=d[i-1][j]+d[i-1][j-1] # 조합 점화식
d[i][j]=d[i][j]%10007
print(d[n][k])
728x90