jxy2012+ 关注
园龄:1年1个月粉丝:0关注:2
由于首位不能是 0 ,因此首位有 b−1 种可能性。其他 n−1 位有 bn−1 种可能。因此这些数总计
(b−1)bn−1
每页 c 个数,求最后一页有多少个数,即求
ans =(b−1)bn−1modc
注意到题目中 b,n 都非常大,采用扩展欧拉定理进行降幂处理:
ans =(b−1)bn−1modc=((b−1)modc)(bmodc)n−1modc={((b−1)modc)(bmodc)(n−1)modφ(c)modcgcd(b,c)=1((b−1)modc)(bmodc)n−1modcgcd(b,c)≠1,n−1<φ(c)((b−1)modc)(bmodc)(n−1)modφ(c)+φ(c)modcgcd(b,c)=1,n−1≥φ(c)
扩展欧拉定理的证明可参考 OI wiki
最后若 ans=0,则输出 c,否则输出 ans。
本文作者:jxy2012
本文链接:https://www.cnblogs.com/jxy2012/p/18149188
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步