大数运算问题
求教一下大数运算的问题,长达几十位的数加减运算用数组如何完成;还有就是想问问2的N次方当,为N100时,数字极大,原理和上面的应该一样吧,咋做呀。
#include <cstdio> long long PowerMod(long long a, int b, int k) { long long tmp = a, ret = 1; while (b) { if (b & 1) ret = ret * tmp % k; tmp = tmp * tmp % k; b >>= 1; } return ret ; } int main() { long long a = 2; int b, k = 9973; while(1) { scanf("%d",&b); if ( b == 0) break; else if ( b < 0) continue; printf("%d\n",PowerMod(a, b, k) -1); } return 0; }