日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > hdu2035 人見人愛A^B(快速冪取模)

hdu2035 人見人愛A^B(快速冪取模)

來源:程序員人生   發布時間:2015-08-04 07:48:07 閱讀次數:3626次

題目鏈接:hdu 2035 人見人愛A^B

      很早的時候做的1道題了,今天想一想把他翻了出來,寫篇文章來為不知道快速冪的同學做1個科普(請允許我吹1下牛逼大笑)。快速冪可以高效的計算冪運算。如果我們使用循環來計算的話,那末時間復雜度就是 O(n) ,使用快速冪的話就只用 O(log n)。不要小視這么1點點,如果1個問題需要屢次 的 冪運算的話,可能就會由于這1點小小的變化而超時。

快速冪介紹:

       我們1直說快速冪快,那他究竟是在哪里快呢? 如果我們求解 2^k??梢詫⑵浔硎緸?/p>

             x^n =( (x2)2....)

      只要做k次平方運算就能夠了,由此我們可以想到,先將n表示為2的冪方次之和

             n = 2^k1 + 2^k2 + 2^k3.......

      就有

           x^n = x^(2^k1) x^(2^k2) x^(2^k3).......

     So.快速冪就是這么快。不太明白的可以用筆和紙手動的摹擬1下。 

例如: x^22 = x^16?x^4?x^2

快速冪的模板:

typedef long long ll; //注意這里不1定都是long long 有時 int 也行 ll mod_pow(ll x, ll n, ll mod){ ll res = 1; while( n > 0 ){ if( n & 1 ) res = res * x % mod; //n&1其實在這里和 n%2表達的是1個意思 x = x * x % mod; n >>= 1; //n >>= 1這個和 n/=2表達的是1個意思 } return res; }

沒看位運算的童鞋,好好回去看看,好多地方都是用這東西

遞歸版的:

typedef long long ll; ll mod_pow(ll x, ll n, ll mod){ if( n == 0 ) return 1; ll res = mod_pow( x * x % mod, n / 2, mod ); if( n & 1 ) res = res * x % mod; return res; }


下面附上本題的代碼:

#include<stdio.h> int mod_pow(int x, int n,int mod){ //快速冪 int res = 1; while( n > 0 ){ if( n & 1 ) res = res * x % mod; x = x * x % mod; n >>= 1; } return res; } int main(){ int m,n; while(scanf("%d%d",&m,&n),n||m) printf("%d ",mod_pow(m,n,1000)); return 0; }

(如有毛病,歡迎指正,轉載請注明出處)


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 色欧美日韩 | 31xx视频免费播放 | 中文字幕一区二区三区日韩精品 | 久久久久久午夜 | 成人av网址在线 | 在线亚洲电影 | 亚洲国产精品国自产拍av秋霞 | 欧美三级成人 | 免费av网站观看 | 久久av一区二区三区 | 在线一区二区三区做爰视频网站 | 欧美又大粗又爽又黄大片视频 | 国内精品久久久久久久 | 亚洲精品亚洲人成人网 | 色婷婷综合久久久中文字幕 | 中文字幕亚洲综合 | 成年人免费看 | 久久久毛片 | 欧美日韩在线播放 | 曰韩三级| 国产网址| 国产一级片网站 | 国产高清中文字幕 | www.av在线 | 精品久久久久久久久久久久久久久久久久 | 亚洲视频精品 | 成人黄色免费观看 | 欧美视频成人 | 麻豆视频一区二区 | 久久91久久| 日本a天堂 | av三级在线观看 | 国产一区二区在线播放 | 亚洲视频在线观看免费 | 国产精品99久久久久久动医院 | 欧美va天堂在线电影 | 欧美一级在线视频 | 性高湖久久久久久久久 | 夜夜艹| 国产一区二区三区免费在线 | 国产精品毛片一区二区三区 |