Problem Solving/백준

[2775] 부녀회장이 될테야

충무로술겜마 2021. 7. 5. 13:19

https://www.acmicpc.net/problem/2775

 

2775번: 부녀회장이 될테야

첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다

www.acmicpc.net

문제 자체는 간단한데 풀이 방법에 대해 조금 고민을 했습니다. 범위가 작지 않고 크다면 당연히 인풋 들어올 때마다 계산하는게 사실 맞는거 같긴한데, 어차피 주어진 조건이 1<=k,n<=14라고 되어 있어서 한번 테이블 만들고 거기서 값만 가져오는게 싸게 먹힐것 같았습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import java.util.*
 
fun main() {
    var apartment = Array(15) { Array(15) { 0 } }
    for (i in 0..14){
        apartment[0][i] = i    // 0 층 초기화
        apartment[i][1] = 1    // i 층 1호 초기화
    }
    for(i in 1..14){
        for(j in 2..14){
            apartment[i][j] = apartment[i-1][j] + apartment[i][j-1]
        }
    }
    val sc: Scanner = Scanner(System.`in`)
    var testCase = sc.nextInt()
    for(i in 1..testCase){
        var k = sc.nextInt()
        var n = sc.nextInt()
        println(apartment[k][n])
    }
}
 
cs

'Problem Solving > 백준' 카테고리의 다른 글

[15829] Hashing  (0) 2021.07.05
[2798] 블랙잭  (0) 2021.07.05
[2231] 분해합  (0) 2021.07.02
[4153] 직각삼각형  (0) 2021.07.02
[10250] ACM 호텔  (0) 2021.07.02