我現在正在解決UVA在線裁判的一些問題,而且我正在遇到需要存儲非常大的整數值(有時候爲15位或更多)的場景。有沒有什麼辦法可以在不使用第三方庫的情況下做到這一點? [類似於java中的BigInteger
類?]。是否有任何內置的類來處理C++中的大整數值?
2
A
回答
2
對於整數戰俘高精度計算,http://en.wikipedia.org/wiki/Exponentiation_by_squaring
我建議GMP
請參考以下鏈接: - C++ handling very large integers
1
需要第三方庫(除非你想寫自己的庫)。 GMP或MPIR是要去的。
1
不,標準庫中沒有這樣的結構。但總是你可以檢查GMP,MPFR或類似的。只需在Google中搜索即可。
1
您可以使用GNU的libgmp爲C.
0
的最容易使用的是Boost Multiprecision
http://www.boost.org/doc/libs/1_55_0/libs/multiprecision/doc/html/index.html
下面是一個簡單的例子
#include <boost/multiprecision/cpp_int.hpp>
using namespace boost::multiprecision;
int main(){
cpp_int a_really_big_number("0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000");
a_really_big_number += 7;
}
相關問題
- 1. 在大數據處理期間是否有任何方法來釋放內存?
- 2. UIKit中是否有基類/工具類,內置事件處理?
- 3. 在圖像處理中是否有任何類似OpenCV的音頻處理庫?
- 4. C#/ .NET是否有內置的「VersionNumber」類?
- 5. 是否有任何「內置函數來連接整個NSMutableArray NSString項目」?
- 6. 在Windows中,是否有任何內置的C++支持UTF?
- 7. 在PHP中是否有任何框架來處理分頁?
- 8. 在C#中是否有任何數據類型來存儲十六進制值?
- 9. .Net是否有任何內置控件來確保消息的完整性?
- 10. 內置整數值類型的位寬是否固定?
- 11. 是否有內置的C#函數來生成有效的CSS類名?
- 12. 在C++中處理大整數
- 13. c#中是否有任何一種「時間處理程序」?
- 14. 是否有一個內置的JavaScript函數來處理時間字符串?
- 15. 是否有任何工具來自動整理F#代碼
- 16. 是否有任何內置函數來計算在SQL Server中的百分比
- 17. fortran中是否有類似C中的預處理器指令?
- 18. TYPO3是否有任何高級API來處理FlexForms操作?
- 19. 是否有任何Bigdata工具來處理PDF文件
- 20. 處理用C任意長度整數++
- 21. 處理整數數據類型是否有更有效的方法?
- 22. 是否有任何快速的JavaScript庫處理集合/數組?
- 23. .Net中是否有內置的URL類?
- 24. RoR中是否有內置的方法來填充整數的零?
- 25. C#中是否有任何值類型集合?
- 26. 是否有任何C預處理器作爲獨立程序?
- 27. 是否有任何API來獲取iPhone的內部數據?
- 28. 是否有任何工具來處理iphone中的sqlite操作iphone
- 29. 是否有任何技巧來處理specs2中的重載方法?
- 30. 是否有任何方法或插件來處理NetBeans中的R包
我做到了。我也能在SO中找到一些帖子,但我只能找到BigIteger的第三方實現,但我不確定我是否可以將它用於在線裁判。 – Raj
[This answer](http://stackoverflow.com/a/12869883/968261)可能會有所幫助。 –