当遇到让求(A/B)%mod时,可以转化为A*(B的逆元)再整体取模,进而转化为((A%mod)*(B'%mod))%mod,B'=B^mod-2,当然这里要使用快速幂求解。
#include <bits/stdc++.h>
#define me(x,y) memset(x,y,sizeof(x))
#define slld(x) scanf("%lld",&x)
#define sd(x) scanf("%d",&x)
#define sf(x) scanf("%f",&x)
#define slf(x) scanf("%lf",&x)
#define pd(x) printf("%d\n",x)
#define plld(x) printf("%lld\n",x)
#define max(x,y) (x>=y?x:y)
#define min(x,y) (x<y?x:y)
#define sum(x,y) (x+y)
#define INF 0x3f3f3f3f
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
const int maxn=2e5+5;
const ll mod=9973;
int n;
ll a,b;
ll quick_pow(ll a,ll b) {
ll ans=1,base=a;
while(b) {
if(b&1) ans=((ans%mod)*(base%mod))%mod;
base=((base%mod)*(base%mod))%mod;
b>>=1;
}
return ans%mod;
}
int main() {
sd(n);
while(n--) {
slld(a);
slld(b);
plld(((a%mod)*quick_pow(b,mod-2))%mod);
}
return 0;
}