快速幂(模板)
在这里看到了快速幂算法的有关推导(在此感谢~)
理解了这个算法本身之后,发现你忘了快速幂怎么打,对于noip2013 T1你也可以拿到80
所以看懂推导很重要(如果忘了,请认真看)
这里就mark一下模板好了(链接写的很详细,所以自己的推导就过了)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <cstdio> #include <cstring> #include <algorithm> #include <iostream> using namespace std; long long ans=1; int a,b,c; int main(){ scanf( "%d%d%d" ,&a,&b,&c); //(a^b)%c a%=c; while (b>0){ if (b%2==1) ans=(ans*a)%c; b/=2; a=(a*a)%c; } cout<<ans; return 0; } |
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步