c++贴瓷砖

题目描述

有一块大小是 2 * n 的墙面,现在需要用2种规格的瓷砖铺满,瓷砖规格分别是 2 * 1 和 2 * 2,请计算一共有多少种铺设的方法。

输入

输入的第一行包含一个正整数T(T<=20),表示一共有T组数据,接着是T行数据,每行包含一个正整数N(N<=30),表示墙面的大小是2行N列。

输出

输出一共有多少种铺设的方法,每组数据的输出占一行。

样例输入
复制代码
3
2
8
12
样例输出
复制代码
3
171
2731

这是一道典型的走楼梯问题,公式为dpi=dpi-1+2*dpi-2

上代码:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std; 
int main(){
	long long dp[35];
	int t;
	cin>>t;
	while(t--){
		int n;
		cin>>n;
		dp[1]=1;
		dp[2]=3;
		for(int i=3;i<=n;i++) dp[i]=dp[i-1]+2*dp[i-2];
		cout<<dp[n]<<endl;
	}	
	return 0;
}
相关推荐
吴声子夜歌19 小时前
Java面试——基础
java·开发语言·面试
橘色的喵20 小时前
PySide6 工业上位机的实时帧链、零拷贝与跨语言架构
c++·架构·图像·pyside
PTCCTP20 小时前
CSP2024-J T3小木棍
c++
晚风醉蝶20 小时前
1-16-计数排序-CountingSort
python·算法·排序算法
疯狂打码的少年20 小时前
【数据结构】排序算法:归并排序与基数排序
数据结构·笔记·算法·排序算法
云深处@20 小时前
【C++设计模式】命令模式
c++·设计模式·命令模式
wuminyu20 小时前
JDK21 FFM异步读取MSG_ZEROCOPY错误队列揭秘
java·linux·c语言·jvm·c++
智嵌研习社20 小时前
Ollama 本地大模型完全配置指南:Modelfile 参数与系统环境变量深度解析
java·开发语言
吃旺旺雪饼的小男孩20 小时前
U-Net 语义分割详解:原论文、PyTorch 实现与真实消融实
人工智能·pytorch·python·算法
lucas_AI20 小时前
35 种开源文档抽取配置,只有 4 个跨过 F1 0.5
人工智能·算法·llm