int gcd(int a,int b){ return b==0?a:gcd(b,a%b); }
关于lcm,若写成a*b/gcd(a,b) ,a*b可能会溢出!
int lcm(int a,int b){ return a/gcd(a,b)*b; }