Notice
Recent Posts
Recent Comments
Link
안녕 세상아,
[c++/백준] 11051 이항 계수 2 본문
https://www.acmicpc.net/problem/11051
11051번: 이항 계수 2
첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 1,000, 0 ≤ \(K\) ≤ \(N\))
www.acmicpc.net
다이나믹 프로그래밍을 사용하여 이항계수를 구하는 문제이다.
다이나믹 프로그래밍을 사용하는 이유는 범위가 1000 이하이기 때문이다.
dp로 이항계수 점화식을 만들면 끝이다.
#include <iostream>
#include <vector>
using namespace std;
int n, k;
int arr[1001][1001];
int main() {
cin >> n >> k;
arr[0][0] = 1;
arr[1][0] = 1;
arr[1][1] = 1;
for (int i = 2; i <= n; i++) {
for (int j = 0; j <= i; j++) {
if (j == 0) {
arr[i][0] = 1;
}
else if (i == j) {
arr[i][j] = 1;
}
else {
arr[i][j] = (arr[i - 1][j - 1] + arr[i - 1][j]) % 10007;
}
}
}
cout << arr[n][k];
}'백준' 카테고리의 다른 글
| [c++/백준] 9659 돌 게임 5 (0) | 2023.08.18 |
|---|---|
| [c++/백준] 21921 블로그 (1) | 2023.08.09 |
| [c++/백준] 1780 종이의 개수 (0) | 2023.06.27 |
| [c++/백준] 2630 색종이 만들기 (2) | 2023.06.21 |
| [c++/백준] 6603 로또 (0) | 2023.06.19 |