![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
bsgs算法
2020/3/16
这个作者很懒,什么都没留下…
展开
-
浴谷P3846 [TJOI2007]可爱的质数
传送门 分析:BSGS算法的模板题,bsgs算法,又称大步小步算法, 主要用来解决 A^x=B(mod C)(C是质数),都是整数,已知A、B、C求x 具体步骤如下: 先令 x = i*m-j,其中 m=ceil(sqrt(p)),ceil是向上取整。 这样原式就变为 ai*m-j = b (mod p), 移项就变成了 ai*m = b*aj (mod p) ...原创 2018-08-11 20:51:06 · 313 阅读 · 0 评论 -
bsgs算法
转自此大神:https://blog.csdn.net/clove_unique/article/details/50740412 引入 BSGS算法,原名Baby Steps Giant Steps,又名大小步算法,拔山盖世算法,北上广深算法——by SLYZoier,数论基本算法之一。 问题 给定a,b,p ,求最小的非负整数x,满足ax≡b(modp) 题解 这就是经典的...转载 2018-08-11 20:56:17 · 379 阅读 · 0 评论 -
破解 D-H 协议
传送门 裸的bsgs 我们可以使用分块来优化暴力枚举,对于Ax≡B(mod C),我们可以令m=⌈⌉,x=i∗m+j,那么该式子就可以写成≡B(mod C),于是我们可以将进行预处理,表示达到这个值的指数项为多少,存到一个哈希表或者map里,之后我们只要枚举就行了,大致复杂度是O()。(知道了这个,这题就做完了qwq) 不知为何令x=i*m-j就过不了 #include <bit...原创 2018-08-13 19:52:09 · 713 阅读 · 0 评论