Solution2 for GSH

#include <iostream>
#include <vector>
#include <string>
#include <climits>

int main() {

    int n;
    int temp;
    std::cin >> n;
    std::vector<int> numbers(n, 0);
    std::vector<int> dp(n, 0);
    for(int i = 0; i < n; ++i)
    {
        std::cin >> temp;
        numbers[i] = temp;
        dp[i] = i;
    }
    for(int i = 2; i < n; ++i)
    {
        for(int j = 0; j < i; ++j)
        {
            if(numbers[j] >= i - j)
            {
                dp[i] = std::min(dp[j]+1, dp[i]);
            }
        }
    }
    std::cout << dp[n-1] << std::endl;

    return 0;
}

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

2 + 6 =

32 + = 36