본문 바로가기
코딩테스트 준비/백준 C#

백준 C# - 9095 +)풀이

by 코딩하는 돼징 2023. 11. 30.
반응형

DP를 이용해서 풀어야한다.

DP알아보러 가기

 

C# - 다이나믹 프로그래밍(DP)

다이나믹 프로그래밍 메모리를 적절히 사용하여 수행 시간 효율성을 향상 시키는 최적화 기법중 하나이다. 큰 문제를 작은 부분 문제로 나누어 해결하며 이미 계산된 작은 문제의 결과를


풀이

01 점화식 찾기

n= 1,2,3,4일때를 직접 그리면 서로의 관계를 찾아 볼 수 있다.

아래 그림을 보면 n = 4에서 n = 1,2,3의 조합으로 만들어지는 것을 확인할 수 있다.

점화식


코드 전문

using System;
namespace baek2
{
    class Program
    {
        static void Main()
        {
            int num = int.Parse(Console.ReadLine());
            
            while(num>0)
            {
                int n = int.Parse(Console.ReadLine());
                int[] dp = new int[n + 10];
                dp[0] = 1;
                dp[1] = 2;
                dp[2] = 4;
                for(int i = 3; i<n;i++)
                {
                    dp[i] = dp[i - 1] + dp[i - 2] + dp[i - 3];
                }
                Console.WriteLine(dp[n-1]);
                num--;
            }
        }
    }
}

 

 

 

 

 

 

 

 

 

 

반응형

'코딩테스트 준비 > 백준 C#' 카테고리의 다른 글

백준C# - 16194 +) 풀이  (0) 2023.12.01
백준 C# - 11052 +) 풀이  (0) 2023.11.30
백준C# - 11727 +) 풀이  (0) 2023.11.30
백준 C# - 11726 +) 풀이  (0) 2023.11.29
백준 C# - 1463 +) 풀이  (0) 2023.11.27

댓글