본문 바로가기
Algorithm/기본지식

[Algorithm/기본지식] 유클리드 호제법

by code_pie 2024. 1. 2.

 

유클리드 호제법

 

 

https://terms.naver.com/entry.naver?docId=2073670&cid=47324&categoryId=47324

 

 

두 정수 a, b의 최대 공약수를 G(a,b)라고 표현한다.

이때 정수 a, b, q, r (b는 0이 아니다)에 대하여 a = bq + r 이면 G(a, b) = G(b, r)이 성립한다.

 

 

증명

 

G(a, b) = g일 때, 최대공약수의 성질에 의해 a = ag, b = bg이고 G(a′, b′) = 1이다. (최대공약수가 g이기 때문에 a′, b′는 서로소 이다.)

a = bq + r 로부터 r = a - bq = g(a′ - bq) 이고, gr의 약수이다.

G(b, r) = g임을 보이기 위해서는 G(b′, a′ - bq) = 1임을 보이면 된다. => b = bg, r= g(a′ - bq)로 표현되기 때문이다.

어떤 정수 d가 존재하여 G(b′, a′ - bq) =d(≠ 1)라고 하면, b′ = dm, a′ - bq = dn라고 할 수 있고, a′ = bq + dn = dmq + dn = d(mq + n) 이므로 G(a′, b′) = 1라는 가정에 모순이다. 따라서 G(b′, a′ - bq) = 1이므로 G(b, r) = g가 성립한다.

 


 

 

반응형

'Algorithm > 기본지식' 카테고리의 다른 글

[Algorithm] 트라이(Trie)  (0) 2024.05.24
[Algorithm/기본지식] 소수 판별하기  (1) 2024.01.02
[Algorithm/기본지식] 소수 판별하기  (0) 2023.02.10