杭电oj 2041 超级楼梯 C语言

这是一个经典的动态规划问题,可以使用动态规划的方法求解。

设arr[i]表示走上第i级楼梯的不同走法数量。则对于第i级楼梯,可以从第i-1级楼梯跨1步走上来,也可以从第i-2级楼梯跨2步走上来。因此,走上第i级楼梯的走法数量等于走上第i-1级楼梯和第i-2级楼梯的走法数量之和。

cs 复制代码
#include<stdio.h>
#include<stdlib.h>

void main()
{
	int n, m, i,j,*arr;
	while (~scanf_s("%d", &n))
	{
		for (i = 0; i < n; i++)
		{
			scanf_s("%d", &m);
			arr = (int*)malloc(m * sizeof(int));
			for (j = 0; j < m; j++)
			{
				if (j < 3)arr[j] = j;
				else arr[j] = arr[j - 1] + arr[j - 2];
			}
			printf("%d\n", arr[j-1]);
		}
	}
}
相关推荐
v_for_van22 分钟前
力扣刷题记录6(无算法背景,纯C语言)
c语言·算法·leetcode
之歆23 分钟前
HA 高可用集群指南
java·开发语言
爱编码的小八嘎39 分钟前
第2章 认识CPU-2.3 32位微处理器(1)
c语言
lsx2024061 小时前
电子商务网站主机:选择与维护指南
开发语言
wangluoqi1 小时前
c++ 逆元 小总结
开发语言·c++
BackCatK Chen1 小时前
第十五章 吃透C语言结构与数据形式:struct/union/typedef全解析
c语言·开发语言·数据结构·typedef·结构体·函数指针·联合体
瓦特what?1 小时前
插 入 排 序
开发语言·c++
『往事』&白驹过隙;1 小时前
C/C++中的格式化输出与输入snprintf&sscanf
linux·c语言·c++·笔记·学习·iot·系统调用
m0_531237171 小时前
C语言-初始化赋值,函数,变量的作用域与生命周期
c语言·开发语言
m0_531237172 小时前
C语言-变量,枚举常量,字符串,打印类型,转义字符
c语言·数据结构·算法