int mod(String a,int mod){
int t=0;
for(int i=0;i<a.length();i++){
t*=10;
t+=a.charAt(i);
if(t>=mod){
t%=mod;
}
}
return t;
int t=0;
for(int i=0;i<a.length();i++){
t*=10;
t+=a.charAt(i);
if(t>=mod){
t%=mod;
}
}
return t;
}
其中t为中间变量,最终存储余数;a为大数,mod为除数;
具体做法:
(1)
从大数最高位开始,只要其大于等于mod,就进行取余操作,余数赋给t;
(2)小于mod则t*10+下一位数字,结果赋给t;
(3)重复(1)操作