#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
typedef long long ll;
//const int N =
int n;
ll qmi(ll a, ll b, ll p){
ll res = 1 % p;
while(b){
if(b & 1) res = (1ll) * res * a % p;
a = a * a % p;//若为int,则需要强制转换成ll;或者全部为ll
b >>= 1;
}
return res;
}
int main(){
scanf("%d",&n);
while(n--){
ll a,p;
scanf("%lld%lld",&a,&p);
if(a % p){
printf("%lld\n",qmi(a,p - 2, p));
}
else puts("impossible");
}
return 0;
}
【acwing】876. 快速幂求逆元*(费马定理)
于 2022-04-04 16:48:39 首次发布