51nod 1149 Pi的遞推式

2021-08-03 05:47:37 字數 874 閱讀 3004

1149 pi的遞推式

基準時間限制:1 秒 空間限制:131072 kb 分值: 640 

難度:8級演算法題

f(x) = 1 (0 <= x < 4)

f(x) = f(x - 1) + f(x - pi) (4 <= x)

pi = 3.1415926535.....

現在給出乙個n,求f(n)。由於結果巨大,只輸出mod 10^9 + 7的結果即可。

input

輸入乙個整數n(1 <= n <= 10^6)
output

輸出f(n) mod 10^9 + 7
input示例

5
output示例

3

李陶冶(題目提供者)

【分析】

組合數。辣雞題目。根本沒頭緒系列。

【**】

//51nod 1149 pi的遞推式

#include#define pi acos(-1)

#define ll long long

#define m(a) memset(a,0,sizeof a)

#define fo(i,j,k) for(i=j;i<=k;i++)

using namespace std;

const int mxn=1000005;

const int mod=1e9+7;

int n,m,t,ans;

int fac[mxn],inv[mxn];

inline void init()

inline ll c(int n,int m)

{ if(n

51nod1149 Pi的遞推式

f x 1 0 x 4 f n f n 1 f n pi 4 x pi 3.1415926535 現在給出乙個n,求f n 由於結果巨大,只輸出mod 10 9 7的結果即可。n 1000000 乙個很好的思路。這樣的遞推過程可以看成乙個dag,求編號為n的點到編號為的點到的路徑總數。首先對最後一步...

51nod 1149 Pi的遞推式

f x 當0 x 4時等於1,x 4時等於f x 1 f x pi 求f n n 4就輸出一,接下來只討論n 4的情況 根據觀察遞推式,我們可以轉化問題 給你乙個n,每次可以減一或減pi,直至減到小於4,求方案數。減看起來不直觀,改為加 從乙個0開始,每次加1或加pi,直至加到與n相差在4以內,求方...

51NOD 1149 Pi的遞推式

f x 1 0 x 4 f n f n 1 f n pi 4 x pi 3.1415926535 現在給出乙個n,求f n 由於結果巨大,只輸出mod 10 9 7的結果即可。我們先來想一下斐波拉切數列的遞推式 fi fi 1 fi 2 f 0 1,f1 1 我們發現,問題等價於問從第0級開始走樓梯...