沙拉公主的困惑

https://www.luogu.com.cn/problem/P2155

首先求 ϕ(m!)

然后要求 [1,n!] 中与 m! 互质的数,考虑到 gcd(a,b)=(a+b,b),那么我们可以增加若干倍的 m!,即 (x,m!)=(x+k×m!,m!),那么可增加的数有 n!m!1 种,加上不增加的一种,恰好是 n!m! 种。

所求即为 n!m!ϕ(m!)=n!(11p1)(11p2)(11pcnt)

前者预处理阶乘,后者预处理逆元,然后前缀预处理。

注意到当 nmod,且 m<mod 时,前者出现了一个 0,所以答案为 0

然而当 mmod 时,需要约去这两个 mod,在预处理中实现。

查询使用 upper_bound 找到 m 的位置的所有 p 的答案。

复杂度 O(N+TlogNlnn)

https://www.luogu.com.cn/record/173972948

本文作者:wscqwq

本文链接:https://www.cnblogs.com/wscqwq/p/18371706

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   wscqwq  阅读(2)  评论(0编辑  收藏  举报
历史上的今天:
2023-08-21 [ABC314F]
2023-08-21 [ABC314E]
2023-08-21 [ABC313E]
2023-08-21 OddOrEven
2023-08-21 Ai+Bj+Ck=X
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起