728x90
이중배열을 사용해서 공식을 찾아야한다.
먼저, 모든 층의 1호수는 모두 1명이고, 0층의 i 호수는 i명이므로 먼저 초기화를 진행한다.
for (int i = 1; i <= 14; i++) {
arr[i][1] = 1; // 모든 층의 1호는 모두 1
}
for (int i = 1; i <= 14; i++) {
arr[0][i] = i; // 0층 i호는 모두 i 명
}
0층부터 있고 14층까지 있다고하였으니 15 , 15 배열을 만들고,
내가 가고싶은 호수가 있다면 그 호수의 옆집과 아래집의 명수를 더하면 된다.
arr[i][j] = arr[i-1][j] + arr[i][j-1];
package BAEKJOON;
import java.util.Scanner;
public class NO2775 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
int [][] arr = new int[15][15];
for (int l = 0; l < t; l++) {
int k = sc.nextInt();
int n = sc.nextInt();
for (int i = 1; i <= 14; i++) {
arr[i][1] = 1; // 모든 층의 1호는 모두 1
}
for (int i = 1; i <= 14; i++) {
arr[0][i] = i; // 0층 i호는 모두 i 명
}
for (int i = 1; i <= 14; i++) { //층
for (int j = 2; j <= 14; j++) { //호수
arr[i][j] = arr[i-1][j] + arr[i][j-1];
}
}
System.out.println(arr[k][n]);
}
}
}
728x90
'Algorithm & SQL > BAEKJOON' 카테고리의 다른 글
백준 JAVA 2839 설탕 배달 (0) | 2022.07.13 |
---|---|
백준 JAVA 10757 큰 수 A+B (0) | 2022.07.12 |
백준 JAVA 10250 ACM 호텔 (0) | 2022.07.12 |
백준 JAVA 1712 손익분기점 (0) | 2022.07.12 |
백준 JAVA 1789 수들의 합 (0) | 2022.07.11 |
댓글