본문 바로가기
알고리즘

[200319/D-6] 백준 알고리즘 공부

by mingutistory 2020. 3. 20.
728x90

푼 문제 :  9095

전체 비율 :  / 155 (약 %) 

공부 시간 : 약 2시간

 

9095

package algorithm;

import java.io.IOException;
import java.util.Scanner;

public class Main{
	
	public static int[] dp; 
	
	public static int cal(int n) {
		if(n == 0 || n == 1) {
			dp[n] = 1;
			return 1;
		}
		
		if(n == 2) {
			dp[n] = 2;
			return 2;
		}
		
		if(dp[n] > 0) {
			return dp[n]; 
		}
		
		dp[n] = cal(n-3) + cal(n-2) + cal(n-1); 
		return dp[n]; 
	}
    public static void main(String[] args) throws IOException {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        for(int i = 0; i < n; i++) {
        	int s = sc.nextInt();
            dp = new int[s+1]; 
            System.out.println(cal(s));

        }        
    }

}

진짜 문제 안 읽냐고 ..

나에게.. 물어보고 싶다.. 

 

300x250

댓글