Pagini recente » Cod sursa (job #1435903) | Cod sursa (job #2282409) | Cod sursa (job #2211563) | Cod sursa (job #428175) | Cod sursa (job #2710761)
#include <fstream>
using namespace std;
int MOD = (int)1e9 + 7;
ifstream cin("inversmodular.in");
ofstream cout("inversmodular.out");
int t, n;
int fact[100005], dist[100005];
int pozA[100005], pozB[100005], a[100005], b[100005];
int lgput(int n, int p) {
int ans = 1, x = n;
for(int i = 0; (1 << i) <= p; i++) {
if((1 << i) & p)
ans = 1LL * ans * x % MOD;
x = 1LL * x * x % MOD;
}
return ans;
}
int inv(int n) {
return lgput(n, MOD - 2);
}
int C(int n, int k) {
if(n < k)
swap(n, k);
return 1LL * (1LL * fact[n] * inv(fact[n - k]) % MOD) * inv(fact[k]) % MOD;
}
int main() {
int a,b,c;
cin>>a>>b;
MOD=b;
cout<<inv(a);
return 0;
}