1606: 瓷砖铺放发表时间:2022-10-27 19:40 1606: 瓷砖铺放时间限制: 1 Sec 内存限制: 512 MB 题目描述有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限。要将这个长度为N的地板铺满,一共有多少种不同的铺法? 输入只有一个数N,代表地板的长度 输出输出一个数,代表所有不同的瓷砖铺放方法的总数 样例输入 Copy4 样例输出 Copy5 解析: 有点像搜索,也有点像递归。直接看代码
#include<bits/stdc++.h> using namespace std; int ans,n; void dg(int x){ if(x>n) return; //当前填的数目大于n就是出错 if(x==n){ans++;return;} //当前填的数目=n说明就是答案,答案数+1 for(int i=1;i<=2;i++) //枚举下面一个填的是1还是2 dg(x+i); } int main(){ ans=0;cin>>n;dg(0); cout<<ans<<endl; return 0; } 上一篇1567: 01字串
下一篇2055: 趣味算命
文章分类:
算法例题
|