并不需要快速幂,在板子里对效率影响不大,但这道题因为龟速乘会TLE。但找了网上的写法基本都是带快速幂的 /yun
ll solve(){ h.clear(); int t=sqrt(p)+1;ll k=1; rep(i,0,t-1)h[mul(k,b)]=i,k=mul(k,a); a=k;k=1; rep(i,0,t){ if(h.count(k)){ int j=h[k]; if(i*t>=j)return i*t-j; } k=mul(k,a); } return -1; }