概述
同余与模运算
三个公式:
输入正整数n和m。输出n mod m的值,n<=10^100,m<=10^9.
输入正整数a,n,m,输出a^n mod m的值,a,n,m<=10^9.
#include <iostream>
using namespace std;
int pow(int a,int n,int m)
{
int ans = 1;
for(int i = 0;i<n;i++)
ans = (int)((long long)ans *n%m);
return ans;
}
int pow_mod(int a,int n,int m)
{
int x = pow_mod(a,n/2,m);
long long ans = (long long)x*x%m;
if(n%2==1)
ans = ans * a % m;
return ans;
}
int main()
{
cout<<pow(2,3,6)<<endl;
cout<<pow_mod(2,3,6)<<endl;
return 0;
}
转载于:https://www.cnblogs.com/yefengCrazy/p/5636651.html
最后
以上就是愤怒钢铁侠为你收集整理的同余与取模的全部内容,希望文章能够帮你解决同余与取模所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复