백준 17968 java : DP 다시정리

magicdrill·2025년 9월 16일
0

백준 문제풀이

목록 보기
653/655

백준 17968 java : DP 다시정리

import java.util.Scanner;

public class bj17968 {
    public static void main(String[] args) {
        int n, i, k;
        Scanner sc = new Scanner(System.in);

        n = sc.nextInt();
        sc.close();

        int [] A = new int[n + 1];
        A[0] = 1;
        if(n >= 1){
            A[1] = 1;
        }

        for(i = 2; i < A.length; i++){
            int temp = 1;
            while(true){
                boolean flag = true;
                for(k = 1; k * 2 <= i; k++){
                    if(temp == 2 * A[i - k] - A[i - 2 * k]){
                        flag = false;
                        break;
                    }
                }

                if(flag){
                    A[i] = temp;
                    break;
                }
                temp++;
            }
        }

//        for(int temp : A){
//            System.out.print(temp + " ");
//        }

        System.out.println(A[n]);
    }
}

0개의 댓글