알고리즘 연습

[9095] 1,2,3 더하기 - Java

밀깜 2022. 3. 9. 15:34

 

1. 문제

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

 

9095번: 1, 2, 3 더하기

각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다.

www.acmicpc.net

2. 풀이

 

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

public class Main {

    public static void main(String[] args) throws IOException {

        // 1. Read the test case T
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int T = Integer.parseInt(br.readLine());

        // 2. Read each case and calculate
        int[] arr = new int[12];
        arr[0] = 1;
        arr[1] = 2;
        arr[2] = 4;

        for (int i = 3; i <= 11; i++) {

            arr[i] = arr[i - 1] + arr[i - 2] + arr[i - 3];

        }
        // 3. Print the result
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < T; i++) {
            int n = Integer.parseInt(br.readLine());
            sb.append(arr[n - 1]).append('\n');
        }
        System.out.println(sb);
    }
}

 

3. 배운점

 

 

4. 개선할 점

 

 


풀이 오류 지적, 다른 접근법 공유, 그 밖에 질문 등 모든 의견을 환영합니다.