[Algorithm]최대공약수 / 최소공배수

최대공약수(GCD) & 최소공배수(LCM)

GCD(최대공약수)

//최대공약수
public static int GCD(int a, int b) {
  int big = a > b ? a : b;
  int small = a <= b ? a : b;
  
  while (small != 0) {
    int tmp = big % small;
    big = small;
    small = tmp;
  }
  return big;
}
static int gcd(int a, int b) {
  if(a%b == 0)
    return b;
  return gcd(b, a%b);
}

LCM(최소공배수)

//최소공배수
public static int LCM(int a, int b) {
  return a*b/GCD(a, b);
}