啊啊啊,球球了

P1226 【模板】快速幂

撞头像了啊!
by ShwStone @ 2023-11-25 13:41:45


你这算的是 $a^{2^b} \bmod p$ 吧
by lzm0107 @ 2023-11-25 13:42:06


@[lzm0107](/user/555994) 啊
by qigejiadao2011 @ 2023-11-25 13:44:32


@[qigejiadao2011](/user/1110668) 这是快速幂的板子题啊,你要用快速幂做。
by Hatsunatsu @ 2023-11-25 13:45:13


首先,你那个 d 就没更新。 其次,这玩意也不是快速幂啊。快速幂是 log 级别的。 @[qigejiadao2011](/user/1110668)
by ShwStone @ 2023-11-25 13:45:53


快速幂是这样的 ```cpp #include<cstdio> #include<iostream> using namespace std; int main(){ long long a,b,c,d,e,res=1; cin>>a>>b>>c; d=a; e=b; while(b){ if(b&1){ res=res*a%c; } a=a*a%c; b>>=1; } cout<<d<<"^"<<e<<" "<<"mod"<<" "<<c<<"="<<res; return 0; } ```
by lzm0107 @ 2023-11-25 13:47:39


@[lzm0107](/user/555994) 没看懂啊
by qigejiadao2011 @ 2023-11-25 13:49:52


@[qigejiadao2011](/user/1110668) 有时候可以看看题解 里面的讲解满清晰的 小人代码 ```cpp #include <bits/stdc++.h> using namespace std; long long a,b,c; long long q(long long a,long long b) { long long ans=1,base=a%c; while(b>0) { if(b&1) ans=ans*base%c; base=base*base%c; b>>=1; } return ans; } int main() { cin>>a>>b>>c; cout<<a<<"^"<<b<<" mod "<<c<<"="<<q(a,b); return 0; }
by linjianju_xi @ 2023-11-25 13:53:36


@[qigejiadao2011](/user/1110668) 题解里讲的挺好
by linjianju_xi @ 2023-11-25 13:56:13


@[qigejiadao2011](/user/1110668) ~~楼主噶啦?~~
by linjianju_xi @ 2023-11-25 13:59:45


| 下一页