【jzoj5340】【NOIP2017模拟9.2A组】【春思】
2017-09-02 11:49
531 查看
description
solution
分解质因数然后等比数列求和,可能没有逆元(本程序没有处理这种情况),这时候需要特殊处理。
code
#include<cstdio> #include<cmath> #include<cstring> #include<algorithm> #define LF double #define LL long long #define ULL unsigned int #define fo(i,j,k) for(LL i=j;i<=k;i++) #define fd(i,j,k) for(LL i=j;i>=k;i--) #define fr(i,j) for(LL i=begin[j];i;i=next[i]) using namespace std; LL const mn=1e6+9,mo=9901; LL n,m,a[mn],b[mn]; LL Pow(LL x,LL y){ LL z=1;x%=mo; while(y){ if(y&1)z=z*x%mo; x=x*x%mo; y>>=1; } return z; } int main(){ //freopen("spring.in","r",stdin); //freopen("spring.out","w",stdout); freopen("d.in","r",stdin); freopen("d.out","w",stdout); scanf("%lld%lld",&n,&m); LL lim=sqrt(n); fo(i,2,lim)if(n%i==0){ a[++a[0]]=i; while(n%i==0)b[a[0]]++,n/=i; } if(n!=1)a[++a[0]]=n,b[a[0]]=1; LL ans=1; fo(i,1,a[0])ans=ans*(Pow(a[i],b[i]*m+1)-1)%mo*Pow(a[i]-1,mo-2)%mo; printf("%lld",(ans+mo)%mo); return 0; }
相关文章推荐
- 【jzoj5341】【NOIP2017模拟9.2A组】【密州盛宴】
- JZOJ5340. 【NOIP2017模拟9.2A组】春思(2017.9A组)
- 【JZOJ5341】【NOIP2017模拟9.2A组】密州盛宴
- jzoj5341. 【NOIP2017模拟9.2A组】密州盛宴
- 【JZOJ5342】【NOIP2017模拟9.2A组】赤壁情
- 【NOIP2017模拟】春思
- [JZOJ5344]【NOIP2017模拟9.3A组】摘果子
- 【JZOJ4928】【NOIP2017提高组模拟12.18】A
- JZOJ 4932. 【NOIP2017提高组模拟12.24】B
- JZOJ 4933. 【NOIP2017提高组模拟12.24】C
- JZOJ5230. 【NOIP2017模拟A组模拟8.5】队伍统计
- JZOJ 5379. 【NOIP2017提高A组模拟9.21】Victor爱数字
- JZOJ 5185. 【NOIP2017提高组模拟6.30】tty's sequence
- 【JZOJ5249】【NOIP2017提高A组模拟8.10】文本编辑器
- 【JZOJ 5400】【NOIP2017提高A组模拟10.7】Repulsed
- 【jzoj5338】【NOIP2017提高A组模拟8.25】【影子】【点分治】
- 【JZOJ4743】【NOIP2016提高A组模拟9.2】积木
- [JZOJ5402]【NOIP2017提高A组模拟10.8】God Knows (口胡)
- JZOJ 5354. 【NOIP2017提高A组模拟9.9】导弹拦截
- 【jzoj5358】【NOIP2017提高A组模拟9.12】【BBQ】