#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
const int N = 100;
ll b[N], p[N];
ll exgcd(ll a, ll b, ll& x, ll& y) {
if (b == 0) {
x = 1; y = 0;
return a;
}
ll g = exgcd(b, a % b, y, x);
y -= a / b * x;
return g;
}
ll inv(ll a, ll p) {
ll x, y; exgcd(a, p, x, y);
return (x % p + p) % p;
}
ll crt(ll* b, ll* p, int n) {
ll mul = 1;
for (int i = 1; i <= n; i++) {
mul *= p[i];
}
ll res = 0;
for (int i = 1; i <= n; i++) {
ll t = mul / p[i];
res = (res + t * b[i] * inv(t, p[i])) % mul;
//巧记:淘宝图片
}
return res;
}
int main() {
int T; cin >> T;
while (T--) {
int n; cin >> n;
for (int i = 1; i <= n; i++) {
}
}
return 0;
}
模板——CRT(中国剩余定理)
最新推荐文章于 2022-10-09 16:00:51 发布