首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在c++中,当n超过64时,如何计算pow(2,n)?

在c++中,当n超过64时,如何计算pow(2,n)?
EN

Stack Overflow用户
提问于 2019-08-02 17:39:55
回答 1查看 897关注 0票数 6

所以,我刚开始使用c++编程,我遇到了一个问题,我需要计算pow(2,n)/2 where n>64?

我尝试使用未签名的长int,但由于c++的限制仅为2^64。那么有什么方法来计算这个。

编辑:

代码语言:javascript
运行
复制
 1 < n < 10^5

表达式的结果用于进一步的计算。

这个问题是在在线platform.So上提出的,我不能用像gmp这样的库来处理大量的数字。

问题

您将得到一个数组A,大小为N。如果元素Ai的值(Ai)大于或等于Ki,则该元素被称为荷电。Ki是由元素Ai组成的数组A的子集总数。

阵列的总电荷值被定义为阵列mod (10^9)+7中所有带电元素的总和。

您的任务是输出给定数组的总电荷值。

EN

回答 1

Stack Overflow用户

发布于 2019-08-02 17:55:29

在严肃的数值工作中,常用的方法是重写公式,存储log(x)而不是x,当您确实需要x时,通常是在不需要所有这些数字的上下文中。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57331211

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档