P1192 台阶问题

Posted mjn1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了P1192 台阶问题相关的知识,希望对你有一定的参考价值。

题目描述

NN级的台阶,你一开始在底部,每次可以向上迈最多KK级台阶(最少11级),问到达第NN级台阶有多少种不同方式。

输入输出格式

输入格式:

 

两个正整数N,K。

 

输出格式:

 

一个正整数,为不同方式数,由于答案可能很大,你需要输出ans mod 100003ansmod100003后的结果。

 

输入输出样例

输入样例#1: 复制
5 2
输出样例#1: 复制
8

说明

对于20\%20%的数据,有N ≤ 10, K ≤ 3N10,K3;

对于40\%40%的数据,有N ≤ 1000N1000;

对于100\%100%的数据,有N ≤ 100000,K ≤ 100N100000,K100。

#include<stdio.h>
#include<string.h>
#define MAX 100010
int main()
{
    int n, k, i, j, s[MAX];
    memset(s, 0, sizeof(s));
    scanf("%d %d", &n, &k);
    s[0] = 1;
    for(i = 1; i <= n; ++i)
    {
        for(j = 1; j <= k; ++j)
        {
            if(i >= j)
            {
                s[i] = s[i] + s[i - j];
                s[i] = s[i] % 100003;
            }
        }
    }
    printf("%d
", s[n]);
    return 0;
}

  

以上是关于P1192 台阶问题的主要内容,如果未能解决你的问题,请参考以下文章

[luogu p1192] 台阶问题

P1192 台阶问题

luogu P1192 台阶问题

[P1192]台阶问题 - 动态规划 - 递推

P1192 台阶问题

青蛙跳台阶衍生之变态跳台阶(递归,思路分析及代码实现)