CodeLabs

[백준 / C#] 2579 : 계단 오르기 본문

백준/1000 ~

[백준 / C#] 2579 : 계단 오르기

무오_ 2023. 7. 30. 22:27
using System;

class Stair
{
    private int[] cost = new int[301];
    internal int this[int index]
    {
        get { return cost[index]; }
        set { cost[index] = value; }
    }
}

class Program
{
    static int t = int.Parse(Console.ReadLine());
    static int[] dp = new int[301];
    static Stair stair = new Stair();
    static void Main(string[] args)
    {
        for (int i = 0; i < t; i++)
            stair[i] = int.Parse(Console.ReadLine());
        dp[0] = stair[0];
        dp[1] = stair[0]+stair[1];
        dp[2] = Math.Max(stair[0] + stair[2], stair[1] + stair[2]);
        for (int i = 3; i < t; i++)
            dp[i] = Math.Max(dp[i - 3] + stair[i - 1] + stair[i], dp[i - 2] + stair[i]);
        Console.WriteLine(dp[t - 1]);
    }
}

'백준 > 1000 ~' 카테고리의 다른 글

[백준 / C#] 2630 : 색종이 만들기  (0) 2023.08.04
[백준 / C#] 2606 : 바이러스  (0) 2023.08.02
[백준 / C#] 2178 : 미로탐색  (0) 2023.07.28
[백준 / C#] 1931 : 회의실 배정  (0) 2023.07.26
[백준 / C#] 1927 : 최소 힙  (0) 2023.07.24