rt,exbsgs部分有一个地方出了问题
while((d=gcd(a,mod)) != 1) { if(b % d) { puts("No Solution"); return; } cnt++; b /= d , mod /= d; k = 1ll * k * (a / d) % mod; if(k == b) { printf("%d\n",cnt); return ; } }
这样是对的。但是把 cnt++ 和上面的 if 换一下顺序就 wa #11 了,这个代码顺序有什么区别吗
cnt++
if