我正在尝试解决C#中最大的主要编程实践问题。问题很简单,打印出来或写入文件中的数字:2 57,885,161 - 1(有 17,425,170 位)
我已经设法通过Emil Stevanof .Net 包装器使用令人惊叹的GNU 多精度算术库来解决它
var num = BigInt.Power(2, 57885161) - 1;
File.WriteAllText("biggestPrime.txt", num.ToString());
即使所有当前发布的解决方案都使用这个库,对我来说感觉就像在作弊。有没有办法在托管代码中解决这个问题?想法?建议?
PS:我已经尝试过使用 .Net 4.0 BigInteger但它永远不会结束计算(我等了 5 分钟,但与 GMP 解决方案的 50 秒相比已经很多了)。