社区讨论

关于不基于 BSGS 的做法的复杂度

P5668 【模板】N 次剩余参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@mhj3vkf6
此快照首次捕获于
2025/11/03 20:17
4 个月前
此快照最后确认于
2025/11/03 20:17
4 个月前
查看原帖
这题 @Determinant 和 @gxy001 讲了一个不基于 BSGS 的做法。大致是 Adleman–Manders–Miller 算法。这个做法的最终复杂度分析中,两位都忽略掉了 Θ(n)\Theta(n) 这个项。
看起来这个因子人畜无害,毕竟指数能有多大呢?
但其实,对于素数 pp,作为 p1p-1 的一个素因子,nn 可以取到 Ω(p2/3)\Omega(p^{2/3})。而且,根据 这里的结果,有正密度(即相当多)的素数可以做到这一点。
这意味着,这个算法的最差复杂度是 Ω(m2/3)\Omega(m^{2/3}),甚至劣于基于 BSGS 的 Θ(m1/2)\Theta(m^{1/2})。(忽略对模数做质因数分解和输出答案的复杂度)
如果这个分析有哪里出了问题,欢迎指出。

回复

1 条回复,欢迎继续交流。

正在加载回复...