int quick_pow(int a,int n,int m){int t=1;while(n>1){if(n%2)  t=(a*t)%m;a=(a*a)%m;n/=2;}return (a*t)%m;
}

这是一个标准的快速幂模板
然而这道题…

NOI:2991:2011
总时间限制: 1000ms 内存限制: 65536kB

描述
已知长度最大为200位的正整数n,请求出2011^n的后四位。

输入
第一行为一个正整数k,代表有k组数据,k<=200接下来的k行,
每行都有一个正整数n,n的位数<=200

输出
每一个n的结果为一个整数占一行,若不足4位,去除高位多余的0

这个题丧尽天良 用了一个200位的指数
简单思路,直接把指数用高精度运算

code:

#include<cstdio>
#include<cstring>
int quick_pow_ex(int a,int *n,int lenn,int m){int t=1,tp=0;while(lenn>0||n[0]>1){//两类情况:长度大于1或个位数小于1if(n[0]%2)t=(a*t)%m;a=(a*a)%m;tp=0;for(int i=lenn;i>=0;i--){tp*=10;tp+=n[i];n[i]=tp/2;tp%=2;}while(n[lenn]==0)lenn--;}return (a*t)%m;
}int main(){int t,n[300];char str[300];scanf("%d",&t);while(t--){scanf("%s",str);for(int i=strlen(str)-1,j=0;i>=0;i--,j++)n[j]=str[i]-'0';//标准高精度输入printf(!t?"%d":"%d\n",quick_pow_ex(2011,n,strlen(str)-1,10000));}
}

[noi-2291]快速幂运算相关推荐

  1. 2018蓝桥杯A组:分数(3种方法 循环累称 快速幂运算 移位运算)

    一.题目:分数 1/1 + 1/2 + 1/4 + 1/8 + 1/16 + - 每项是前一项的一半,如果一共有20项, 求这个和是多少,结果用分数表示出来. 类似: 3/2 当然,这只是加了前2项而 ...

  2. 快速幂运算(入门完整版)

    快速幂运算 除数学问题之外,也有许多地方用到了幂运算.在此给大家介绍一种能够非常高效的计算幂运算的快速幂运算算法--反复平方法. Carmichael Number 我们把对任意的1<x< ...

  3. 快速幂运算——人见人爱A^B

    题目链接:Problem - 2035 (hdu.edu.cn) Problem Description 求A^B的最后三位数表示的整数. 说明:A^B的含义是"A的B次方" In ...

  4. 快速幂算法c语言求a的n次方,快速幂运算模板(求n^k以及前几位或后几位)

    计算n^k的结果 步骤: 1.把n由十进制转换为二进制,按二进制来计算(最后结果还是一样的) 2.把n由二进制转换为2^k相加的形式 先举个例子: 求5^22: 接着就可以很好地理解了 O(logn) ...

  5. 快速幂运算and 快速乘运算

    ll qpow(ll a,ll b) {ll ans=1;while(b){if(b&1) ans=(ans*a)%mod;a=(a*a)%mod;b>>=1;}return an ...

  6. 快速幂运算 《挑战程序设计竞赛》

    2018-3-1 这里我就对数进行说明,并没有对矩阵进行求解. 求x^n,其中n是一个比较大的数 如果用一般的方法的话,我们会直接进行累乘即可,时间复杂度是O(n),但是这个好像并不能满足我们的要求, ...

  7. C/C++:计算N的N次方的个位数(巧用快速幂与模运算性质)

    题目描述(源自杭电OJ): 相关数学知识一:取模运算的性质  a乘b的结果对p取模等于a对p取模的结果乘b对p取模的结果再整体取模于p,详见下图 证明过程如下: 相关数学知识二:快速幂运算 以求a的b ...

  8. 一种快速的幂运算方法(底数是自然数e,指数是浮点数)

    问题   [给一个浮点数 y y y,现在需要你求出 e y e^y ey 的值是多少].   对于这个问题,最直接的方法是用库函数,例如在C++中<math.h>头文件提供了exp()函 ...

  9. python pow函数——幂运算 快速幂算法实现思路

    说明 python 内置pow函数用于实现幂的运算,在这里我使用的是快速幂算法实现pow函数功能. 快速幂 快速幂算法本质上基于的是分治思想. 优点:其时间复杂度为 O (log₂N), 与暴力遍历时 ...

最新文章

  1. 20应用统计考研复试要点(part36)--概率论与数理统计
  2. C++中宏与内联函数
  3. 你画我猜微擎版小程序源码
  4. VK维客众筹网整站源码 手机端众筹网站系统源码
  5. 全新胶囊网络Efficient-CapsNet效果显著!
  6. cmd删除txt部分文字_Python识别图片中的文字
  7. 内存泄露与内存溢出的区别
  8. 小苏的Shell编程笔记之六--Shell中的函数
  9. Exchange2010部署 配置证书
  10. mysql 内部 临时表_MySQL内部临时表何时使用磁盘
  11. 【渝粤教育】国家开放大学2018年秋季 0313-22T促销策划与实战 参考试题
  12. mysql自助完成翻页代码_MySql实现翻页查询功能
  13. 简单打印-双排标签102*30模板设计
  14. CSDN为什么要办一场面向开发者的云计算大会?
  15. Android开源实战:手把手教你实现一个简单 好用的搜索框(含历史搜索记录
  16. 知识图谱推理:现代的方法与应用
  17. 那么,储能电池的BMS与动力电池的BMS有什么区别呢?
  18. 子佩短信管家 v1.0.0
  19. 【VSCode】yarn : 无法加载文件 A:\yuke\node\node_gobal\yarn.ps1,因为在此系统上禁止运行脚本。
  20. RK3399 Android7.1 ACOVP导致系统死机

热门文章

  1. Cocos2dx游戏开发笔记23:《奇怪的大冒险》源码学习,附下载
  2. 国开电大 传感器与测试技术 形考任务
  3. Java高频面试题(四)
  4. 【Memento模式】C++设计模式——备忘录模式
  5. UppSite获融资210万美元 推免费网站转APP服务
  6. React 的受控组件和非受控组件有什么不同
  7. 阿里云搭建k8s kubeadm init失败的原因
  8. Android中%s %d %1$s %1$d %f以及空格占位符的使用
  9. NIST SP 800-132基于口令的密钥生成函数PBKDF和主密钥保护数据的方法研究
  10. 色情病毒“魅影杀手”的恶意行为及黑产利益链分析