UVa 11582 巨大的斐波那契數!(冪取模)

2022-06-20 22:06:13 字數 678 閱讀 5239

題意:輸入兩個非負整數a、b和正整數n,你的任務是計算f(a^b)除以n的餘數。f[0]=0,f[1]=1,f[i+2]=f[i+1]+f[i]。

思路:因為餘數最多n種,所以最多n^2項就會出現重複。計算出週期,之後冪取模算出週期內的第幾個數。

1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7

using

namespace

std;89

10const

int maxn = 1000 + 5

;11 typedef unsigned long

long

ll;12

13ll a, b;

14int

n;15

intm;

1617

int pow_mod(ll a, ll b, int

m) 18

2526

int f[maxn*maxn], period[maxn];

2728

int solve(ll a, ll b, int

n) 33

34int

main()

3552

}53 cout << solve(a, b, n) <55 }

Uva 11582 巨大的斐波那契數 模運算

題意 計算 f a b n 分析 1 斐波那契數列是 f i 2 f i 1 f i 2 詢問次數是10 4,打表處理 設 f n,i 是 f i n 的餘數 3 根據模運算可以知道 f n,i f n,i 1 f n,i 2 n 4 a b的處理了,a,b 2 64,資料很大,但是可以發現乙個特徵...

uva11582 斐波拉切數列迴圈節 尤拉定理降冪

the i th fibonacci number f i is recursively defined in the following way f 0 0 and f 1 1 f i 2 f i 1 f i for every i 0 your task is to compute some v...

斐波那契數列 斐波那契數列python實現

斐波那契數列 fibonacci sequence 又稱 分割數列 因數學家列昂納多 斐波那契 leonardoda fibonacci 以兔子繁殖為例子而引入,故又稱為 兔子數列 指的是這樣乙個數列 1 1 2 3 5 8 13 21 34 在數學上,斐波納契數列以如下被以遞推的方法定義 f 1 ...