Lewis's Tech Keep

[백준] 1,2,3 더하기 본문

JAVA/알고리즘

[백준] 1,2,3 더하기

Lewis Seo 2021. 4. 5. 15:18

참고 : www.acmicpc.net/problem/9095

 

9095번: 1, 2, 3 더하기

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

www.acmicpc.net

 

- dp문제

- dp[i] : i번째에 더할 수 있는 모든 경우의 수 (= dp[i-1] (i-1 + 1의 경우) + dp[i-2] (i-2 + 2의 경우) + dp[i-3]  (i-1 + 3의 경우))

 

더보기
import java.util.*;

public class Solution {

    private static int n;
    private static int[] dp;

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        dp = new int[12];
        dp[1] = 1;
        dp[2] = 2;
        dp[3] = 4;
        for(int i=4; i<=11; i++) {
            dp[i] = dp[i-1] + dp[i-2] + dp[i-3];
        }

        for(int i=0; i<n; i++) {
            int c = sc.nextInt();
            System.out.println(dp[c]);
        }
    }
}

'JAVA > 알고리즘' 카테고리의 다른 글

[백준] 최단경로  (0) 2021.04.07
[백준] 암호코드  (0) 2021.04.05
[백준] 동물원  (0) 2021.04.04
[백준] 상자넣기  (0) 2021.04.02
[백준] 합분해  (0) 2021.03.31
Comments