import java.util.*;
import java.io.*;
public class Main {
public static void main(String args[]) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int t = Integer.parseInt(bf.readLine());
for(int tc = 0; tc < t; tc++) {
int k = Integer.parseInt(bf.readLine());
int n = Integer.parseInt(bf.readLine());
int[][] dp = new int[k + 1][n + 1];
for(int i=1; i<=n; i++) {
dp[0][i] = i;
}
for(int i=1; i<=k; i++) {
int sum = 0;
for(int j=1; j<=n; j++) {
sum += dp[i - 1][j];
dp[i][j] = sum;
}
}
System.out.println(dp[k][n]);
}
}
}
Scanner, BufferedReader 속도 차이
DP 연습
작은 문제로 쪼개서 -> 맨 아래부터 풀어나가기
이렇게도 있음
k층 n호의 사람 수 = 같은 층의 이전 호 + 아래 층의 같은 호
dp[k][n] = dp[k][n-1] + dp[k-1][n]
'코딩테스트 > Baekjoon' 카테고리의 다른 글
[백준 9656] 돌 게임2 (DP) (0) | 2023.08.04 |
---|---|
[백준 9095] 1, 2, 3 더하기 (DP) (0) | 2023.08.04 |
int 배열 arr에서 합이 100인 서로 다른 위치의 두 원소가 존재하는지 구하기 (0) | 2023.04.09 |
주어진 문자열에서 각 알파벳이 몇 번씩 나왔는지 구하기 (0) | 2023.04.08 |