PS 공부

백준 5일차 : 백준 2775번 부녀회장이 될테야

Min00 2023. 2. 23. 15:58

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

 

2775번: 부녀회장이 될테야

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

www.acmicpc.net

 

이 문제는 저번에 풀었던 피보나치 함수와 비슷한 문제에요!

 

테스트 케이스가 14보다 작다고 주어져있으니, 미리 값을 빠르게 구해 배열에 넣어놓고

 

이를 가져와 출력하면 되는 간단한 문제였습니다!!

 

약 1년전에 아 이거 어케 풀지 하고 여러번 넘겼던 기억이 있는데.. 이렇게 쉽게 풀리다니 실력이 늘은 것 같아서 기분이 좋네요!!

 

앞으로 더 열심히 해볼게요!

 

어제는 지원하고자 하는 동아리에 사전 과제가 있어서 그거를 푸느라 백준을 못 풀었어요😥😥

 

유니티 관련 과제였는데 이것도 한번 열심히 공부해서 포스팅 하는 날이 오길 바래봅니다~!

 

오늘도 알고리즘 먼저 보여드릴게요!

 

 

이렇게 한방에 문제를 맞춰냈답니다 ( •̀ ω •́ )✧

 

 

작성 코드


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.*;
 
public class B2775 {
 
    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
        
        int[][] apt=new int[15][15]; //행 : k층 열 : n호
        
        for(int k=0;k<15;k++) {
            for(int n=1;n<15;n++) {
                if(k==0) apt[k][n]=n;
                else {
                    if(n==1) apt[k][n]=1;
                    else {
                        apt[k][n]=apt[k-1][n]+apt[k][n-1];
                    }
                }
            }
        }
        
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        
        int t=Integer.parseInt(br.readLine());
        String result="";
        
        for(int i=0;i<t;i++) {
            int floor=Integer.parseInt(br.readLine());
            int num=Integer.parseInt(br.readLine());
            result+=apt[floor][num]+"\n";
        }
        
        System.out.println(result);
        
    }
 
}
 
cs