int GCD(int a, int b){

int gcd;

for (int i = 1; i < a && i < b; i++){

if (a%i == 0 && b%i == 0){

gcd = i;

}

}

return gcd;

}


머리 싸매다가 프갤에 딱 이거다 하는 거 있길래 배껴봤는데

이거보다 더 효율적인 방법이 있어?

이 방식으로는 최소 공배수부터 계속 gcd에 대입하고 최대값에 도달했을 때 연산을 끝내는 방식인데