问个问题
查看原帖
问个问题
322285
北京楼主2023/5/6 13:06

关于第一篇题解中

long long ExCRT() {
    ...
    for(int i = 1; i <= n; ++i) {
        ...
        ans += (__int128)(C/gcd) * x % (B/gcd) * lcm % (lcm*=B/gcd);
        ...
    }
    ...
}

最后那个 lcm * = B / gcd,既然 lcm 是 p1_1 ~ pi−1_{i - 1} 的最小公倍数,那不应该是

lcm *= p[i] / gcd(lcm, p[i])

吗?

实测换成后一种写法会 WA (有六个点几乎全输出 -1),这是为啥qaq

2023/5/6 13:06
加载中...