1. 유클리드 호제법 (Euclidean Algorithm)

유클리드 호제법은 두 정수의 최대공약수(GCD: Greatest Common Divisor)를 구하는 방법입니다. 큰 수와 작은 수를 반복적으로 나눗셈하면서 나머지를 이용해 최대공약수를 찾는 방식입니다. 이 알고리즘은 오랜 역사를 지닌 만큼 단순하면서도 매우 효율적입니다.

원리

예제: gcd(209,572)gcd(209, 572)gcd(209,572)

  1. 572÷209=2572 \div 209 = 2572÷209=2 (몫), 나머지: 572mod209=154

    572  209=154572 \bmod 209 = 154

  2. 209÷154=1209 \div 154 = 1209÷154=1 (몫), 나머지: 209mod154=55

    209  154=55209 \bmod 154 = 55

  3. 154÷55=2154 \div 55 = 2154÷55=2 (몫), 나머지: 154mod55=44

    154  55=44154 \bmod 55 = 44

  4. 55÷44=155 \div 44 = 155÷44=1 (몫), 나머지: 55mod44=11

    55  44=1155 \bmod 44 = 11

  5. 44÷11=444 \div 11 = 444÷11=4 (몫), 나머지: 44mod11=0

    44  11=044 \bmod 11 = 0

따라서, gcd(209,572)=11gcd(209, 572) = 11gcd(209,572)=11입니다.

응용 분야


2. 에라토스테네스의 체 (Sieve of Eratosthenes)

에라토스테네스의 체는 주어진 범위 내의 소수를 효율적으로 찾는 방법입니다. 고대 그리스 수학자 에라토스테네스가 고안한 이 알고리즘은 단순한 배수 제거 방식으로 작동합니다.

원리와 과정