高精度 數樓梯

2021-10-03 20:00:07 字數 952 閱讀 5490

題目

樓梯有n階,上樓可以一步上一階,也可以一步上二階。

編乙個程式,計算共有多少種不同的走法。

乙個數字,樓梯數。

走的方式幾種。

輸入 #1 複製

4輸出 #1 複製

5說明/提示

60% n<=50

100% n<=5000)

原本一看,這不是 斐波那契數列 嗎,直接公式下去寫完,(dp[i] = dp[i-1]+ dp[i-2];)

結果超時好多。。。。。其實這個題標註(高精度)那有這樣就搞定的。。。

//int n;

//int dp[5005];

//int main()

// cout《由 斐波那契數列 得, c (i)= c(i-1)+c(i-2); 這裡我們把c(i-1)當成a,c(i-2)當成b,c(i)當成c。

比如: a是第一階,a=1(一種走法),b是第二階,b=2(兩種走法)…c是三階,c = a+b = 3 (三種走法).

然後我們把b賦給a,c賦給b,(這時a是第二階,b是第三階)然後再執行一次 c = a+b;(c自然是第四階)

由此類推,能得到 第n階 有幾種走法。

然後,我們把它換成高精度的寫法,就ok了。。。。。。

#include#includeusing namespace std;

const int maxn = 5005;

int a[maxn],b[maxn],c[maxn];

int n;

int main()

//a= b;

if(c[lc+1]>0)lc++;

for(int j=1;j<=lc;j++)

//b =c;

for(int j=1;j<=lc;j++) }

if(n<3)

return 0;

}

高精度 數樓梯

洛谷 p1255 數樓梯 題目描述 樓梯有n階,上樓可以一步上一階,也可以一步上二階。編乙個程式,計算共有多少種不同的走法。分析 只用稍微用用腦子就可以看出,這是一道斐波那契數列的問題 不過省略了開頭的1,即這裡的數列為 12358 注意n 0,1,2的情況。然而這題需要高精所以寫的特別長 incl...

高精度數演算法 加法

基本資料型別 長度有限。所以大的資料被單獨拿出來。高精度演算法就是模擬我們在紙上的運算。要死要死要死 我忘記了。乙個空間有剩餘的int後面是自帶補0的啊。還有平時沒有注意到的三目運算子 length str1 str2 str1 str2 上 include include define max 1...

php高精度數計算

一 前方有坑 php在使用加減乘除等運算子計算浮點數的時候,經常會出現意想不到的結果,特別是關於財務資料方面的計算,給不少工程師惹了很多的麻煩。比如今天工作終於到的乙個案例 a 2586 b 2585.98 var dump a a a b 期望的結果是 float 0.02 實際結果 float ...