P1192 台阶问题
Posted mjn1
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了P1192 台阶问题相关的知识,希望对你有一定的参考价值。
题目描述
有NN级的台阶,你一开始在底部,每次可以向上迈最多KK级台阶(最少11级),问到达第NN级台阶有多少种不同方式。
输入输出格式
输入格式:
两个正整数N,K。
输出格式:
一个正整数,为不同方式数,由于答案可能很大,你需要输出ans mod 100003ansmod100003后的结果。
输入输出样例
说明
对于20\%20%的数据,有N ≤ 10, K ≤ 3N≤10,K≤3;
对于40\%40%的数据,有N ≤ 1000N≤1000;
对于100\%100%的数据,有N ≤ 100000,K ≤ 100N≤100000,K≤100。
#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 台阶问题的主要内容,如果未能解决你的问题,请参考以下文章