【问题标题】:C++ - GMP pow() functionC++ - GMP pow() 函数
【发布时间】:2012-01-08 01:17:40
【问题描述】:

我正在尝试在 C++ 中执行 pow(2,500)。但是我觉得long long还不够。

有人告诉我我可以使用gmp.h。但是如何在gmp 中创建pow(2,500)

【问题讨论】:

  • 已经回答。以this answer 为例。
  • @Alex:抱歉,您的回答不适合要求基于 GMP 的解决方案的问题。 (为什么?因为 GMP 比您的解决方案更节省内存。)如果您在无法使用外部库的编程竞赛中,基于十进制扩展的解决方案是可以的。否则,这是一种非常不理想的方法。
  • @Alex:更具体地说,在十进制扩展解决方案中,您使用整个 char 来存储 3.322 位数据。这意味着您有 58.5% 的空间浪费。
  • @ChrisJester-Young:让该代码每个数字仅使用 4 位是微不足道的,对吧?

标签: c++ math gmp largenumber 128-bit


【解决方案1】:

Integer Exponentiation。提示:选择底部两个函数中的任意一个。

【讨论】:

  • 这可能是一个评论,而不是一个答案,但是 OP 也不是一个问题......
  • @KerrekSB:这实际上是一个答案:该页面上列出的底部两个函数将完全按照要求执行。如果您认为最好将其写入答案,可以这样做,但不太理想,因为我想鼓励 OP 自己阅读。
猜你喜欢
  • 1970-01-01
  • 2012-06-02
  • 2023-04-08
  • 1970-01-01
  • 1970-01-01
  • 2012-05-15
  • 2018-09-08
  • 2018-06-30
  • 1970-01-01
相关资源
最近更新 更多