描述
在模1000000007的意义下,求b分之a mod 1000000007等于多少。
输入
第一行一个整数tim表示数据组数。
接下来tim行,每行两个整数表示a和b。
1<=tim<=10000,1<=a,b<=1000000000。
输出
输出tim行,每行一个整数表示答案。
样例输入
2
2 1
1 2
样例输出
2
500000004
咋理解,a=1,b=2,b分之a mod 1000000007 等于 50000004呢
500000004怎么算的。。。
AC代码:
#include<iostream>
using namespace std;
const int mod = 1e9 + 7;
int ksm(int a,int b)
{
int ans = 1;
while(b > 0)
{
if(b % 2 == 1)
{
ans = (long long)ans * a % mod;
}
b = b / 2;
a = (long long)a * a % mod;
}
return ans;
}
int main()
{
int tim;
cin>>tim;
while(tim--)
{
int a,b;
cin>>a>>b;
cout<<(long long)a * ksm(b,mod - 2) % mod<<endl;
}
return 0;
}