BSGS,全称\(Baby Step Giant Step\),是用于求解离散对数的一种算法. 就是用来求\(A^x \equiv B (mod\ p)\) 的x这么一种算法-- 理论知识是:在[0,p)之内是一定有解的,因为指数模的周期性.即\(A^x\)对p的模随x变化有周期性,最大周期不超过p.首先,余数只可能有p个元素,所以x取不超过p个值必定出现相同的余数.根据同余的性质,只要找到两个余数相同的,剩下的全部乘以\(A^k,k\)为整数,所以\(A^n \equiv A^{x+n}\)对…