这道题某些人一看,诶,这不挺简单的吗,但是请注意他的样例

已经超过了十万,TM这还是int能够达到的极限吗?

所以我么不得不用处最后的神器——递归,啊呸,高精度

其实这道题“特别”简单,因为其实只需要输入整数n,不需要输入char字符数组(这道题有BUG),如果真的要的话,那还是老套路,整数N我怕他们会挑刺,这里就给大家科普一下

unsigned long long int 类型,占得字节数只有8(64位),数值范围是(0~18446744073709551615),也就是0~2的64次方-1。

然后后面的思路就很简单了,我就不详细讲了,那些白嫖怪拿走吧

额。。。。文章质量不佳,我也是挺崩溃的,那我还是详细讲一下吧。

第一步输入,也可以用cin,但是scanf的准度更高,而且还需要用ulld来输入,不然的话你输入的长度太高,当场就崩掉

第二步计算,通过再也熟悉不过的两重循环嵌套,但是不需要数组的循环计算,直接等于乘以二,然后简单的进位

第三步导0,这里的导0是专门用于高精度乘法的导0,大整数加法不通用

第四步输出

我真的不能再勤奋了,麻烦给个赞谢谢!

#include<cstdio>
#include<iostream>
#include<cmath>
#include<cstring>
using namespace std;
int a[10000000],len=1;
unsigned long long int n;
int main()
{scanf("%ulld",&n);a[1]=1;for (int i=1;i<=n;i++){for (int j=1;j<=len;j++){a[j]*=2;}for (int k=1;k<=len;k++){if (a[k]>9){a[k+1]+=a[k]/10;a[k]%=10;if (k==len){len++;}}}}while (a[len]==0 && len>1) len--;for (int i=len;i>=1;i--){printf("%d",a[i]);}
}

计算2的N次方【高精度算法】相关推荐

  1. C++计算a的b次方的算法(附完整源码)

    C++计算a的b次方的算法 C++计算a的b次方的算法完整源码(定义,实现,main函数测试) C++计算a的b次方的算法完整源码(定义,实现,main函数测试) #include <iostr ...

  2. 计算x的n次方 高效算法

    注释部分也是可以的  但是远不及后面来的短小精悍. public class Solution{public double MyPow(double x, int n){// double ans=0 ...

  3. 2的23次方减1的python_2的n次方(python计算2的n次方的算法)

    2的n次方,就是n个2相乘.2^N 意思就是2*2*2*2*-*2(n个2相乘)2的2次方,也叫做2的平方.也就是2个2相乘.记作22.2的3次方,也叫做2的立方.也就是3个2相乘.记作23. 2^n ...

  4. 计算2的n次方的程序用高精度计算c语言,【高精度】计算2的N次方

    题目相关 [题目描述] 任意给定一个正整数N(N≤100),计算2的n次方的值. [输入] 输入一个正整数N. [输出] 输出2的N次方的值. [输入样例] 5 [输出样例] 32 分析 本题考察的是 ...

  5. 信息学奥赛一本通 1170:计算2的N次方 | OpenJudge NOI 1.6 12:计算2的N次方

    [题目链接] ybt 1170:计算2的N次方 OpenJudge NOI 1.6 12:计算2的N次方 [题目考点] 1. 高精度 考察:高精乘低精 高精度计算讲解 2. 快速幂 [解题思路] 先估 ...

  6. 《算法技术手册》一2.4.6 二次方的算法性能

    2.4.6 二次方的算法性能 现在考虑一个类似的问题:两个n位的整数相乘.例2-4展示了使用小学课堂上学过的算法实现的乘法运算,其中n位数字的表示方法与之前的加法一样. 例2-4:mult乘法的Jav ...

  7. 高精度算法(加减乘除取模(均可以处理负数))

    高精度算法 前言 大数加法 不可以处理负数的模板 可以处理负数 大数减法 两个数都是整数,且相减结果大于0 两个数都是正整数,相减结果可以是负数 两个数均可以是负数 高精度乘法 两个数均可以是负数 大 ...

  8. Python计算 1的9999999次方,不到1s就得出答案!是如何处理的?

    问题引发 网友计算1的9999999次方,不到1s就得出答案.那python是如何处理的? >>> a=1 >>> i=a**9999999 >>> ...

  9. 汇编语言:使用汇编程序计算2的8次方

    预备知识 在博客 汇编指令:使用汇编指令计算2的8次方 中使用汇编指令进行计算的,太不可科学了,是用来熟悉汇编 练习指令滴.这次我们用真正的汇编语言进行编程来计算2的8次方. 在本程序中,没有直接的数 ...

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

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

最新文章

  1. 统计学习方法|逻辑斯蒂原理剖析及实现
  2. 图像中值处理MATLAB实现
  3. c/c++反混淆方法
  4. 韦博英语危机爆发,教培行业如何应对中年危机?
  5. 记录一下ui设计中的网站配色
  6. if、for、while、do while、switch (区别于if、while)解析
  7. mybatis实现动态sql语句
  8. java myeclipse The type java.lang.CharSequence cannot be resolved. It is indirectly referen
  9. 在eclipse中创建第一个java应用程序,并在控制台输出“hello world”。
  10. Visual Studio Online 的 FAQ:iPad 支持、自托管环境、Azure 账号等
  11. java.lang.IllegalArgumentException: MALFORMED jar解析中文报错问题
  12. 【转载】windows跳板机配置远程桌面连接
  13. 苹果已招聘两名梅赛德斯前工程师 其中一人曾在保时捷工作近6年
  14. 编程序常用英语单词是什么
  15. Onvif之获取媒体信息GetProfiles
  16. play framework 在 IDEA 11中debug
  17. Easy3D 样条曲线拟合
  18. 京东工业冲刺港交所:年营收141亿 GGV与红杉中国是股东
  19. 尚硅谷nginx笔记
  20. 2014年放假安排时间表

热门文章

  1. 金山网盾3.6beta2新增下载安全防御 增强全面诊断
  2. angular的同级controller通信
  3. VBA激活Activate用法
  4. html中什么是框架,什么是css框架
  5. 《手机处理器和存储器》参数与选择
  6. PhotoShop 矢量蒙板
  7. 新版BIOS U盘启动装机
  8. 智慧养老解决方案的背景
  9. python小游戏合集-9个Python编程小游戏,有趣又好玩,简直太棒了
  10. phpstudy网站或站点创建成功,打开无响应