在C ++中找到函数Y =(X ^ 6 + X ^ 2 + 9894845)%981的值
假设我们给定了f(x)=(x^6+x^2+9894845)%971的函数,现在对于给定的x值,我们必须找到f(x)的值。
因此,如果输入为5,则输出为469
为了解决这个问题,我们将遵循以下步骤-
定义一个函数power_mod(),它将采用基数,指数,模数,
base:=基本模数
结果:=1
当指数>0时,执行-
结果:=(结果*基数)模数
如果指数是奇数,则-
基本:=(基本*基本)模数
指数=指数/2
返回结果
从主要方法中执行以下操作-
返回power_mod(n,6,m)+power_mod(n,2,m))modm+355)modm
示例
让我们看下面的实现以更好地理解-
#include <bits/stdc++.h>
using namespace std;
typedef long long int lli;
lli power_mod(lli base, lli exponent, lli modulus) {
base %= modulus;
lli result = 1;
while (exponent > 0) {
if (exponent & 1)
result = (result * base) % modulus;
base = (base * base) % modulus;
exponent >>= 1;
}
return result;
}
int main(){
lli n = 654654, m = 971;
cout<<(((power_mod(n, 6, m)+power_mod(n, 2, m))% m + 355)% m);
}输入项
84562
输出结果
450
热门推荐
5 短祝福语简短暖心
10 结婚祝福语粤语大全简短
11 晚上祝福语女生文案简短
12 法语妈妈生日祝福语简短
13 药厂开工祝福语大全简短
14 蛋糕节日祝福语简短英文
15 跨年的生日祝福语简短
16 文案祝福语英文短句简短
17 在家聚餐婚礼祝福语简短
18 学生节祝福语大全简短