2775번
문제
- a층의 b호에 살려면 자신의 아래(a-1)층의 1호부터 b호까지 사람들의 수의 합만큼 사람들을 데려와 살아야 한다는 계약 조항이 있을 때, k층의 n호에는 몇 명이 살고 있는지 구하는 문제
문제 해결 순서
- k와 n이 최대 14까지이기 때문에 15x15 배열을 하나 만들어 준다
- 반복문을 돌면서 각 층의 1호는 모두 1명으로, 1층의 호는 i로 초기화 한다
- k층의 n호는
k-1층의 n호의 사람
과 k층의 n-1호의 사람
을 더한 값
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int[][] apt = new int[15][15];
for(int i = 0; i < 15; i++){
apt[i][1] = 1;
apt[0][i] = i;
}
for(int i = 1; i < 15; i++){
for(int j = 2; j < 15; j++){
apt[i][j] = apt[i][j-1] + apt[i-1][j];
}
}
int t = scan.nextInt();
for(int i = 0; i < t; i++){
int x = scan.nextInt();
int y = scan.nextInt();
System.out.print(apt[x][y] + "\n");
}
}
}