
-Code
import java.util.Scanner;
public class BOJ11050 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int k = sc.nextInt();
int[][] dp = new int[n + 1][n + 1];
// dp 배열 초기화
for (int i = 0; i <= n; i++) {
dp[i][0] = 1;
dp[i][1] = i;
dp[i][i] = 1;
}
// 점화식에 따라 dp에 입력
// ex) 5C3 = 4C3 + 4C2
// 위와 같이 점화식을 사용해 dp에 입력
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
dp[i][j] = dp[i - 1][j] + dp[i - 1][j - 1];
}
}
System.out.println(dp[n][k]);
}
}
dp를 이용해서 해결해 보았습니다.
'Beakjoon&프로그래머스 > Java' 카테고리의 다른 글
| [백준/Java] 10384번 팬그램 (0) | 2025.12.16 |
|---|---|
| [백준/Java] 11726번 2×n 타일링 (0) | 2025.12.15 |
| [백준/Java] 4575번 Refrigerator Magnets (0) | 2025.12.15 |
| [백준/Java] 3602번 iChess (0) | 2025.12.14 |
| [백준/Java] 11117번 Letter Cookies (0) | 2025.12.13 |