int gcd(int a, int b) {
int c;
while (b != 0) {
c = a % b;
a = b;
b = c;
}
return a;
}
최대공약수를 구하면 최소공배수는 구하기 쉽다.
a=12 b=8
GCD(12,8) - GCD(8,12%8) - GCD(8,4) - GCD(4,0)
최대공약수 = 4
최소공배수 = a*b/최대공약수
'Algorithm > 코테정리' 카테고리의 다른 글
| [코테정리] C++ N자리 2진수 만들기 및 2진수 변환 (0) | 2021.06.07 |
|---|---|
| [코테정리] C++ 정렬문제 (0) | 2021.06.05 |
| [코테정리] C++ 소수 구하기 에라토스테네스의 체 (0) | 2021.06.05 |
| [코테정리] C++ string 기법 (0) | 2021.06.04 |
| [코테준비] C++ 제곱근 구하기, 정수형 제곱근(pow, sqrt) (0) | 2021.06.04 |
