#include <iostream> #include <cstdio> #include <cstring> #include <stdlib.h> #include <algorithm> #include <math.h> #include <vector> #include <list> #include <map> #include <queue> #include <set> using namespace std; int exGcd(int a,int b,int *x,int *y) { if(b==0) { *x=1;*y=0; return a; } int r=exGcd(b,a%b,x,y); int t=*x;*x=*y;*y=t-a/b*(*y); return r; } int main(){ int a,b,x,y; cin>>a>>b; cout<<exGcd(a,b,&x,&y)<<endl; cout<<x<<" "<<y<<endl; }