博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
逆元(清北 算)
阅读量:6003 次
发布时间:2019-06-20

本文共 595 字,大约阅读时间需要 1 分钟。

 

#include
#define ll long longint p=1e9+7;ll fastpow(ll x,ll k){ ll b=1; while (k>0) { if (k%2==1) b=(b*x)%p; k=k/2; x=(x*x)%p; } b=b%p; return b;} int n,m;int main(){ scanf("%d%d",&n,&m);ll sum=m; for(int i=2;i<=n;i++) { ll w=fastpow(i,m); sum+=((i*((w-1+p)%p))%p*fastpow(i-1,p-2))%p; sum%=p; } printf("%d",int(sum)); }

ax ≡ 1 (mod b)

b^-1x≡1

a,b互质

x^b-1≡ 1(mod b)

a*x^-1(mod b)=a*x^b-2(mod b)

转载于:https://www.cnblogs.com/wspl98765/p/6868101.html

你可能感兴趣的文章
[XMove-自主设计的体感解决方案] 系统综述
查看>>
设计模式 ( 十五 ) 中介者模式Mediator(对象行为型)
查看>>
【LINUX学习】磁盘分割之建立primary和logical 分区
查看>>
【YUM】第三方yum源rpmforge
查看>>
IOS(CGGeometry)几何类方法总结
查看>>
才知道系列之GroupOn
查看>>
⑲云上场景:超级减肥王,基于OSS的高效存储实践
查看>>
linux kswapd浅析
查看>>
变更 Linux、Ubuntu 时区、时间
查看>>
高仿QQ空间 侧滑Menu效果且换肤功能《IT蓝豹》
查看>>
mac的git的21个客户端
查看>>
Spring Cloud自定义引导属性源
查看>>
[共通]手机端网页开发问题及解决方法整理
查看>>
我的友情链接
查看>>
${basePath}
查看>>
linux命令之uniq简单用法
查看>>
使用Eclipse调试Java程序的10个技巧
查看>>
Hive分桶表
查看>>
oracle10g 启动时报错:ORA-32004 ORA-19905
查看>>
思科分发列表过滤路由(RIP)动态路由协议篇
查看>>