蒜頭君爬樓梯(2) 計蒜客

2021-10-19 09:06:53 字數 1210 閱讀 5911

目錄

題目  題解

1

號階梯,或者跨越

3個樓梯到達

3號階梯。如下圖

為了選出一種最輕鬆的爬樓梯的方式,蒜頭君想把所有不同的到達樓頂的方式都嘗試一遍。對於一共有

n 個階梯的樓梯,蒜頭君一共有多少總方法從樓底到達樓頂。

由於最後答案可能很大,輸出最後的答案對

100007

取模的結果。

輸入格式

第一行輸入乙個整數

n(1≤

n≤1000)。

輸出格式

輸出最後答案對於

100007

取模的結果。

輸出時每行末尾的多餘空格,不影響答案正確性

要求使用「檔案輸入輸出」的方式解題,輸入檔案為

stairs.in

,輸出檔案為

stairs.out

樣例輸入複製4

樣例輸出複製3

知識點:遞推的應用分析:這道題難點在於對跳任意奇數的階梯的處理,由於我們已經對第0層處理了,所以要用第1層處理

,注意這裡要逆序處理,j=i-1,因為只有逆序處理才能夠遍歷小於本台階的加上奇數為這個數的數,讀者無法理解的話可以自行畫圖,一種是順序圖,一種是逆序圖,對比一下就可的順序是錯誤的。

**:

#include#includeusing namespace std;

const int mod=100007;

long long dp[1005];//注意用long long。dp[i]表示從底樓到第i層樓的總方案數

int main()

dp[0]=1;//預處理

for (int i=1;i<=n;i++)

}cout<

return 0;

}

蒜頭君爬樓梯(1) 計蒜客

目錄 題目 題解 蒜頭君很喜歡爬樓梯,但是蒜頭君腿不夠長,每次蒜頭君最多只能一步跨越兩個階梯。比如他初始在樓底,跨越乙個階梯到達 1號階梯,或者跨越兩個階梯到達 2號階梯。如下圖 為了選出一種最輕鬆的爬樓梯的方式,蒜頭君想把所有不同的到達樓頂的方式都嘗試一遍。對於一共有 n 個階梯的樓梯,蒜頭君一共...

計蒜客 題庫 爬樓梯

題目 假設你現在正在爬樓梯,樓梯有 n級。每次你只能爬 1級或者 2級,那麼你有多少種方法爬到樓梯的頂部?第一行輸入乙個整數 n 1 n 50 代表樓梯的級數。輸出爬到樓梯頂部的方法總數。樣例輸入5 樣例輸出8 思路 每次只能爬1或者2級,也就是說可以從前n 1 n 2兩級任意一級到達n級,那麼到達...

計蒜客第16題 爬樓梯

假設你現在正在爬樓梯,樓梯有n級。每次你只能爬1級或者2級,那麼你有多少種方法爬到樓梯的頂部?格式 第一行輸入乙個數n n 50 代表樓梯的級數。接下來一行輸出你的方法總數。樣例1 輸入 5 輸出 8 很容易想到這道題可以用遞迴的方法 分析 假設從底走到第n級的走法有f n 種,走到第 級有兩個方法...