#include <iostream> using namespace std; int Euclid(int a,int b){ //ax+by=(a,b); a,b>0 return b?Euclid(b,a%b):a; } int Ex_Euclid(int a,int b,int &x,int &y){ if(b==0) {x=1,y=0;return a;} int ans=Ex_Euclid(b,a%b,x,y); int t=y; y=(x-a/b*y); x=t; return ans; } int main() { int x=0,y=0,a,b; while(cin>>a>>b){ cout<<Euclid(a,b)<<" "<<Ex_Euclid(a,b,x,y)<<endl; } return 0; }
//cout 是从右至左计算