조합 예제 - 3
Last updated
Last updated
dp 리스트
for i 14만큼:
dp[i][1] = 1 # i층의 1호는 항상 1의 값을 지닐 수 있다.
dp[0][i] = i # 0층의 i호는 i의 값을 지닐 수 있다.
for i 1~14:
for j 2~14:
dp[i][j] = dp[i][j-1] + dp[i-1][j]
t(테스트 케이스)
for t 반복:
k(층수)
n(호수)
print(dp[k][n])dp = [[0 for _ in range(15)] for _ in range(15)]
for i in range(1, 15):
dp[i][1] = 1
dp[0][i] = i
for i in range(1, 15):
for j in range(2, 15):
dp[i][j] = dp[i][j - 1] + dp[i - 1][j]
t = int(input())
for _ in range(t):
k = int(input())
n = int(input())
print(dp[k][n])import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int[][] dp = new int[15][15];
for (int i = 1; i < 15; i++) {
dp[i][1] = 1;
dp[0][i] = i;
}
for (int i = 1; i < 15; i++) {
for (int j = 2; j < 15; j++) {
dp[i][j] = dp[i][j - 1] + dp[i - 1][j];
}
}
int t = Integer.parseInt(br.readLine());
for (int i = 0; i < t; i++) {
int k = Integer.parseInt(br.readLine());
int n = Integer.parseInt(br.readLine());
System.out.println(dp[k][n]);
}
}
}