大数求余算法
对大数进行求余操作,这里只涉及给定一个大数,针对给定的 mod 值采用模拟手算的方法进行求余操作
模拟手算
原理:从字符串 large_num 首位开始对 mod 进行取余操作,并将余数 result 存起来与后一位合到一起继续进行取余操作,直到遍历完整个字符串得到最终余数
核心代码:
1 | long long result = 0; |
模拟手算(优化版)
原理:在模拟手算基础上,将大数进行分块,每块含多位数字,每次对块进行取余操作,并将余数 result 存起来与后一块合到一起继续进行取余操作,直到遍历完所有得到最终余数
核心代码:
1 | int k_size = 9; |
参考:
如何计算大数对某个数求余
高精度大数(超 long long)取余原理及模板 - cheems~ - 博客园
c 语言如何求大数的余数 | PingCode 智库
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Thee!
评论




