PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
C_and_CPP
[問題] Powering a number
作者:
QwQxError
(Satelliate)
2016-06-19 10:41:26
最近在用VC++14練習大數運算
題目內容:
依序輸入三個整數N、K與M,
輸出N的K次方用M除的餘數
也就是輸出 N^K mod M
我當時以為用大數乘法就可以
可是看到測資
感覺會迴圈到10億次
就認為不可能了
測資為:
1000007949
1000008723
1000020917
輸出答案:
477542316
想請問板上的各位有什麼解法嗎?
作者:
Richun
(解放左手的OO之力)
2016-06-19 11:45:00
N^K = (q*M+N%M)^K = nM + (N mod M)^K 可能連大數都不用
作者:
stimim
(qqaa)
2016-06-19 12:28:00
N^(2K) = (N^K)^2, N^(2K+1) = N * (N^K)^2
作者: Sylveon (ä»™åç²¾éˆ)
2016-06-19 13:35:00
用快速冪
作者:
johnjohnlin
(嗯?)
2016-06-21 21:31:00
unsigned long long n2 = n, res = 1;while(k){if(k%2)res=res*n2%m;res=res*n2%m;k/=2;}↑這樣
繼續閱讀
Re: [問題] 用指標指向vector的element?
wtchen
Re: [討論] typedef的問題請教
chuegou
[討論] typedef的問題請教(已解決)
MaxHaru
[問題] 關於sublime text
Mistborn
[問題] pure mvc notify 使用 tuple
diabloevagto
[問題] 關於指標本身的記憶體位置
EngRookie
[問題] VC build error with error MSB3073
nokia550298
[分享] Microsoft Research 的 Checked C
wtchen
[問題] doulbe free or corruoption
xanushan
Re: [問題] static inline的使用時機
EdisonX
Links
booklink
Contact Us: admin [ a t ] ucptt.com