題型:hdoj-1061-rightmost digit
atcoder regular contest 113 b-a ^ b^c
快速冪模板
int
qmi(
int a,
int k,
int q)
return res;
}
hdoj-1061-rightmost digit
#include
using namespace std;
typedef
long
long ll;
const
int mod=10;
intqmi
(ll a,ll k)
return res;
}int
main()
return0;
}
對於數的冪,1~9的冪級數都有週期,所以根據數字本身的規律也可以直接得到最低位上的數是多少。
0,1,5,6無論經過多少次平方的得數個位數永遠是其本身,故輸出其本身即可。
2的k次冪個位是2,2k次冪個位是4,,3k次冪是8,4k次冪是6
3的k次冪個位是3,2k次冪個位是9,,3k次冪是7,4k次冪是1
7的k次冪個位是7,2k次冪個位是9,,3k次冪是3,4k次冪是1
8的k次冪個位是8,2k次冪個位是4,,3k次冪是2,4k次冪是6
4的偶次冪個位是6,奇次冪個位是4
9的偶次冪個位是1,奇次冪個位是9
…………
ac**如下:
#include
#include
#include
#include
#include
#include
using namespace std;
#define ll long long
ll qmi
(ll a,ll k,
int p)
return res;
}int
main()
return0;
}
數論 快速冪
快速冪 演算法介紹演算法利用了二分的思想,可以達到o logn 可以把b按二進位制展開為 b p n 2 n p n 1 2 n 1 p 1 2 p 0 其中p i 0 i n 為 0 或 1 這樣 a b a p n 2 n p n 1 2 n 1 p 1 2 p 0 a p n 2 n a p ...
數論 快速冪
沒看懂,先記著 轉 typedef long long ll ll mod ll qpow ll a,ll n 計算a n mod return re mod struct matrix 定義乙個結構體,方便傳遞值 maxn和mod由全域性定義,其中mod根據需要可以省去 matrix mat mu...
數論 快速冪
在上一期時間複雜度優化的文章中就已經提到過了快速冪,這一期就來講一講快速冪。什麼是快速冪?快速冪正如其名,就是快速的冪,快速 是指這種方法運算速度很快,冪 就不用說了,a的b次方的結果,也就是b個a相乘 一提起冪,大家一定會不約而同的想到 include這個標頭檔案和pow函式,但是如果不讓你用這個...