Dragon
Description
Ps:
一道好题。
重点在于对同余方程的推导,然后就很裸了。
对 multiset 的应用也很漂亮。
Solution
首先,我们根据题目所给条件,可以得出一个方程:
xi×Atki≡ai(modpi)也即xi≡ai×Atk−1i(modpi)然后考虑如何求出 Atk−1i ,并将其变成扩展 Crt 的形式。
由于 Atki 与 pi 不互素,所以无法直接求出他的逆元,所以我们考虑先求出 gcd(ai,pi,Atki) ,然后把三个同除以 gcd 。注意如果此时如果两数仍不互素,就无解。
然后 exgcd 求下逆元,就变成拓展 Crt 板子了。
Code:
1 |
|
[题目链接](