瓷砖铺放-dfs
題目描述
有一長度為N(1< =N< =10)的地板,給定兩種不同瓷磚:一種長度為1,另一種長度為2,數(shù)目不限。要將這個長度為N的地板鋪滿,一共有多少種不同的鋪法?
例如,長度為4的地面一共有如下5種鋪法:
4=1+1+1+1
4=2+1+1
4=1+2+1
4=1+1+2
4=2+2
編程用遞歸的方法求解上述問題。
輸入
只有一個數(shù)N,代表地板的長度
輸出
輸出一個數(shù),代表所有不同的瓷磚鋪放方法的總數(shù)
樣例輸入
4
樣例輸出
5
水題!!!!!
代碼如下:
#include <iostream> using namespace std; int ans; int n;void dfs(int sum) {if (sum > n)return ;if (sum == n) {ans++;return ;}for (int i = 1; i <= 2; i++) {dfs(sum + i);} }int main() {cin >> n;dfs(0);cout << ans << endl;return 0; }總結(jié)
- 上一篇: 装分体式水冷真的有手就行?谈谈分体式水冷
- 下一篇: 关于迁移的问题:偏好设置从旧mac迁移(