카테고리 없음

[백준] 2775번 - 부녀회장이 될테야 (Java)

soro.k 2022. 9. 18. 15:08

 

[백준] 2775번 : 부녀회장이 될테야 - JAVA [자바]

https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다. (1 <=..

st-lab.tistory.com

*해당 포스팅은 상단에 링크된 포스팅을 바탕으로 개인 공부 목적을 위해 작성되었으므로 자세한 내용은 위 링크를 확인해 주시기 바랍니다.

 


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Mai {

    public static int[][] APT = new int[15][15]; // 제한 조건 활용

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        make_APT();

        int T = Integer.parseInt(br.readLine());

        for(int i = 0; i < T; i++) {
            int k = Integer.parseInt(br.readLine());
            int n = Integer.parseInt(br.readLine());
            sb.append(APT[k][n]).append("\n");
        }
        System.out.println(sb);
    }

    private static void make_APT() {
        // 미리 2차원 배열에 값을 넣어준다.

        for(int i = 0; i < 15; i++) {
           APT[i][1] = 1;
           APT[0][i] = i;
        }

        for(int i = 1; i < 15; i++) { // 1층부터 14층까지
            for(int j = 2; j < 15; j++) { // 2호부터 14호까지
               APT[i][j] = APT[i][j-1] + APT[i -1][j];
            }
        }
    }
}

 

애초에 제한조건이 있기 때문에 미리 값을 계산해서 넣어두고 입력받은 값들을 대입해서 값을 꺼낼 수 있게 코드를 짠다. 위 포스팅에 있는 그림 설명이 엄청 도움이 됐다.