부녀회장이 될테야(2775)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
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));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringBuilder sb = new StringBuilder();
// StringTokenizer st = new StringTokenizer(br.readLine());
int t = Integer.parseInt(br.readLine());
while(t-- > 0){
int k = Integer.parseInt(br.readLine()); // 층
int n = Integer.parseInt(br.readLine()); // 호
int[][] arr = new int[k+1][n+1];
for(int i = 0; i <= k; i++){
for(int j = 1; j <= n; j++){
if(i == 0){
arr[i][j] = j;
} else {
arr[i][j] = arr[i-1][j] + arr[i][j-1];
}
}
}
sb.append(arr[k][n] + "\n");
}
bw.write(sb.toString());
bw.flush();
bw.close();
br.close();
}
}
풀이과정
1) 4층 4호까지 인원수를 적어보았다. 2) 각 층과 호에 해당하는 사람들을 표로 만들어 보았다 3) 표로 만들며 적다보니 층과 호수의 인원은 ‘한 층 밑의 같은 호수 인원 + 같은 층의 하나 작은 호수’ 라는 규칙을 발견하였다 4) 해당 로직을 코드로 구현하였다.
- 성공
- 메모리 : 14556 KB
- 시간 : 140 ms