Project Euler 5: 1부터 20까지 모두로 나누어떨어지는 가장 작은 수를 최소공배수로 바로 만들기
1부터 20까지의 모든 수로 나누어떨어지는 가장 작은 양의 정수를, 하나씩 찾아보는 대신 유클리드 호제법과 lcm(a, b) = a / gcd(a, b) × b를 거듭 적용해 만듭니다. 이 방법이 왜 정확히 최소공배수를 주는지 증명하고, 정수 범위와 C++17·Python 3 구현까지 다룹니다.
Project Euler알고리즘수학최소공배수