ACM数论之旅2---快速幂,快速求a^b
生活随笔
收集整理的這篇文章主要介紹了
ACM数论之旅2---快速幂,快速求a^b
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
如果題目說(shuō)數(shù)據(jù)很大,還需要求余,那么代碼就可以這么寫(xiě)
LL pow_mod(LL a, LL b){//a的b次方LL ret = 1;while(b != 0){if(b % 2 == 1){ret = (ret * a) % MOD ;}a = (a * a ) % MOD ;b /= 2;}return ret; }對(duì)于位運(yùn)算熟的小盆友,還可以寫(xiě)成位運(yùn)算形式,速度又快,又好理解,在加一個(gè)求余p,代碼如下
LL mul(LL a, LL b, LL p){//快速乘,計(jì)算a*b%p LL ret = 0;while(b){if(b & 1) ret = (ret + a) % p;a = (a + a) % p;b >>= 1;}return ret; }?
轉(zhuǎn)載于:https://www.cnblogs.com/xuyanqd/p/8758983.html
與50位技術(shù)專(zhuān)家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的ACM数论之旅2---快速幂,快速求a^b的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 20165310java_blog_we
- 下一篇: 利用ngnix解决跨域问题