博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用数组表示大整数
阅读量:4678 次
发布时间:2019-06-09

本文共 685 字,大约阅读时间需要 2 分钟。

不久前看见一个问题,求n!

n!=1*2*3*4*······*n,对于结果来说可能会很大,以至于爆long long的范围,所以单纯的暴力从1乘到n显然是不行的了。博主从网上找到题解后对此豁然开朗:啊!原来可以用一个数组来表示一个大整数

接下来我们来讲解如何实现这种方法。

首先,我们可以用一个数组A表示当前数值a(A[0]代表a的个位,A[1]代表a的十位,依次下去……),然后,把a乘以整数k转化为数组中的每一个元素都乘以k,同时注意处理相应的进位。

下面为对应的代码实现:

1 #include
2 #include
3 #define MAX 3000 4 int main() 5 { 6 int n,A[MAX],s=0,c=0,i,j; 7 scanf("%d",&n); 8 memset(A,0,sizeof(A)); 9 A[0]=1;10 for(i=2;i<=n;i++)11 for(j=0;j
=0;j--)18 {19 if(A[j])break;20 }21 for(j;j>=0;j--)22 printf("%d",A[j]);23 return 0;24 }

 

谢谢观看,如有问题欢迎提出并指正。

转载于:https://www.cnblogs.com/960571726y/p/10566802.html

你可能感兴趣的文章
Linux压缩解压缩(unzip,tar)
查看>>
kafka 在阿里云部署
查看>>
yum 命令下载安装Openjdk
查看>>
Hyperic
查看>>
(转)SimpleDateFormat使用
查看>>
设计模式有感
查看>>
react-native android 初始化问题
查看>>
最后一周总结
查看>>
教大家怎么给博客添加一个看板娘
查看>>
[设计模式]4、设计模式之工厂设计模式
查看>>
从尾到头打印链表(c++实现)
查看>>
videojs 播放 rtmp 感悟
查看>>
胖子哥的大数据之路(15):互联网企业数据战略运营规划之总决式
查看>>
popen() 使用举例 (转载)
查看>>
NSString的常用方法
查看>>
在Xcode中使用Git进行源码版本控制
查看>>
教程Xcode 下编译发布与提交App到AppStore
查看>>
指针链
查看>>
基础理论
查看>>
【leetcode 简单】 第六十题 反转链表
查看>>