题目描述
求关于 x 的同余方程 ax ≡ 1 (mod b)的最小正整数解。
输入输出格式
输入格式:
输入只有一行,包含两个正整数 a, b,用一个空格隔开。
输出格式:
输出只有一行,包含一个正整数 x0,即最小正整数解。输入数据保证一定有解。
#include<iostream> #include<cstring> #include<cstdio> #include<cstdlib> #include<cmath> #include<algorithm> #define LL long long #define FOR(a,b,c) for(int a=b;a<=c;a++) #define maxn 1024 using namespace std; LL a,b,d,x,y,k; void ggcd(LL a,LL b,LL &d,LL &x,LL &y){ ){ d=a; x=; y=; }else{ ggcd(b,a%b,d,y,x); y-=x*(a/b); } } int main() { scanf("%lld%lld",&a,&b); ggcd(a,b,d,x,y); k=b/d; ) x-=k; ) x+=k; printf("%lld",x); ; }