快速幂

题单介绍

# **快速幂练习** 附上基本快速幂的代码(计算a^b) ------------ #### 简单易懂 ------------ ```cpp #include <bits/stdc++.h> int a,b; int quick_pow(int a,int b) { int ret=1; while(b!=0) { if(b%2==1) { ret*=a; } a*=a; b/=2; } return ret; } int main() { scanf("%d%d",&a,&b); printf("%d\n",quick_pow(a,b)); return 0; } ``` ------------ #### 优化代码 ```cpp #include <bits/stdc++.h> int a,b; int quick_pow(int a,int b){ int ret=1; while(b){ if(b&1)ret=ret*a; a*=a; b>>=1; } return ret; } int main(){ scanf("%d%d",&a,&b); printf("%d\n",quick_pow(a,b)); return 0; } ```

题目列表

  • 【模板】快速幂
  • [NOIP 2013 提高组] 转圈游戏
  • [HNOI2008] 越狱