From c475aa6f982f964cb0d796291cfd75b4c03b226e Mon Sep 17 00:00:00 2001 From: SSUM <116950962+ssum21@users.noreply.github.com> Date: Tue, 4 Mar 2025 17:53:24 +0900 Subject: [PATCH] =?UTF-8?q?[Silver=20II]=20Title:=20=EC=9D=B4=ED=95=AD=20?= =?UTF-8?q?=EA=B3=84=EC=88=98=202,=20Time:=20260=20ms,=20Memory:=2055236?= =?UTF-8?q?=20KB=20-BaekjoonHub?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 백준/Silver/11051. 이항 계수 2/README.md | 28 +++++++++++++++++++ 백준/Silver/11051. 이항 계수 2/이항 계수 2.py | 16 +++++++++++ 2 files changed, 44 insertions(+) create mode 100644 백준/Silver/11051. 이항 계수 2/README.md create mode 100644 백준/Silver/11051. 이항 계수 2/이항 계수 2.py diff --git a/백준/Silver/11051. 이항 계수 2/README.md b/백준/Silver/11051. 이항 계수 2/README.md new file mode 100644 index 0000000..9098e84 --- /dev/null +++ b/백준/Silver/11051. 이항 계수 2/README.md @@ -0,0 +1,28 @@ +# [Silver II] 이항 계수 2 - 11051 + +[문제 링크](https://www.acmicpc.net/problem/11051) + +### 성능 요약 + +메모리: 55236 KB, 시간: 260 ms + +### 분류 + +조합론, 다이나믹 프로그래밍, 수학 + +### 제출 일자 + +2025년 3월 4일 17:53:01 + +### 문제 설명 + +

자연수 N과 정수 K가 주어졌을 때 이항 계수 (NK)를 10,007로 나눈 나머지를 구하는 프로그램을 작성하시오.

+ +### 입력 + +

첫째 줄에 NK가 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ KN)

+ +### 출력 + +

(NK)를 10,007로 나눈 나머지를 출력한다.

+ diff --git a/백준/Silver/11051. 이항 계수 2/이항 계수 2.py b/백준/Silver/11051. 이항 계수 2/이항 계수 2.py new file mode 100644 index 0000000..5b4f9fb --- /dev/null +++ b/백준/Silver/11051. 이항 계수 2/이항 계수 2.py @@ -0,0 +1,16 @@ +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)] + +for i in range(0, N+1): + D[i][0] = 1 + D[i][i] = 1 + D[i][1] = i + +for i in range(1, N+1): + for j in range(1, i+1): + D[i][j] = (D[i-1][j-1] % 10007 + D[i-1][j] %10007)%10007 + +print(D[N][K]) \ No newline at end of file