大数取余

本文介绍了两种大数取余的算法问题,包括A^B mod m和A%B的情况。对于A^B mod m,当A小于m且B较大时,通过公式避免直接计算大数。对于A%B,当A过大无法直接取余时,可以通过遍历大数的每一位并取模得到答案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

整理一下自己遇到的两种大数取余类型的题目,如果遇到其他类型以后还会接着去补充。
一、A^B mod m
几个基本公式:这里写图片描述
A < m,且B是一个较大的数,A^B非常巨大,先求A^B再用m取模是不现实的。利用上面公式,我们可以进行如下代换:这里写图片描述
算法:

//计算exp=a^n mod m 
//输入:a,n,m
//输出:exp
int exp_mod(int a,int n,int m)
{
    int exp,A; //exp表示a^n,A是A_i
    exp=1;
    A=a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值