我想知道什么是获得2 ^ 65之类的答案的最佳方法,而不使用额外的库,这些库可以容纳比标准64位数据类型更多的空间。我想过使用字符,但这似乎需要大量的计算时间。
答案 0 :(得分:0)
我通过让int中的每个位代表一个数字,将数字映射到几十亿。这将是一个int数组,因此数组中第3个int的第5位将是(((2 * 32) - 1)+ 5)68而第2个int的第2位将是(((1 * 32) ) - 1)+ 2)33等等。通过这种方式,您需要做的就是增加数字的大小。所需的总空间将比其他情况需要的空间少32倍,并且您可以将所有数字都达到限制映射。但是,使用此方法每个数字只能有1个。