题解
然后就变成了求解同余方程
code
#define ll long long
#include<bits/stdc++.h>
const ll mod=19260817;
using namespace std;
ll x,y;
ll c;
ll a,b;
inline void read(ll &x) {
x = 0;
ll flag = 1;
char c = getchar();
while(c < '0' || c > '9'){
if(c == '-')flag = -1;
c = getchar();
}
while(c >= '0' && c <= '9') {
x = ((x << 3) + (x << 1) + (c ^ 48))%mod;
c = getchar();
}
x *= flag;
x%=mod;
}
inline void write(ll x)
{
if(x < 0){
putchar('-');
x = -x;
}
if(x > 9)
write(x / 10);
putchar(x % 10 + '0');
}
void exe(ll a1, ll b1)
{
if(b1 == 0)
{
x = a / a1;
y = 0;
return;
}
exe(b1, a1 % b1);
ll x2 = x, y2 = y;
x = y2;
y = x2 - a1 / b1 * y2;
}
int main()
{
read(a);
read(b);
exe(b, mod);
x = (x % mod + mod) % mod;
write(x);
putchar('\n');
return 0;
}
标签:a1,有理数,read,ll,b1,P2613,取余,y2,mod
From: https://www.cnblogs.com/pure4knowledge/p/18114480