FZU 1759 欧拉函数 降幂公式

发布时间:2017-3-31 2:36:43 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"FZU 1759 欧拉函数 降幂公式 ",主要涉及到FZU 1759 欧拉函数 降幂公式 方面的内容,对于FZU 1759 欧拉函数 降幂公式 感兴趣的同学可以参考一下。

 1 #include<iostream>
 2 #include<cstring>
 3 #include<cstdio>
 4 #define ll __int64
 5 #define mod 10000000007
 6 using namespace std;
 7 char a[1000006];
 8 ll x,z;
 9 ll quickpow(ll x,ll y,ll z)
10 {
11     ll ans=1;
12     while(y)
13     {
14         if(y&1)
15             ans=ans*x%z;
16         x=x*x%z;
17         y>>=1;
18     }
19     return ans;
20 }
21 ll phi(ll n)
22 {
23     ll i,rea=n;
24     for(i=2;i*i<=n;i++)
25     {
26         if(n%i==0)
27         {
28             rea=rea-rea/i;
29             while(n%i==0)
30                 n/=i;
31          }
32     }
33     if(n>1)
34         rea=rea-rea/n;
35     return rea;
36 }
37 int main()
38 {
39     while(scanf("%I64d %s %I64d",&x,a,&z)!=EOF)
40     {
41         ll len=strlen(a);
42         ll p=phi(z);
43         ll ans=0;
44         for(ll i=0;i<len;i++)
45             ans=(ans*10+a[i]-'0')%p;
46         ans+=p;
47         printf("%I64d\n",quickpow(x,ans,z));
48     }
49     return 0;
50 }

上一篇:bigdata_hadoop_namenode手动重启错误解决分析
下一篇:网页状态码监控脚本 - - 烂笔头

相关文章

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款