Today I Lived/항해99
[TIL] 2021.06.18 [항해99 / 12일] 3주 차 알고리즘
배운 점
최소공배수, 최대공약수를 코드로 구현하는 게 생각보다 쉽지 않네...?
학창 시절에도 배우지 못 한 유클리드 호제법을 덕분에 신나게 공부해 보았다!
# 최대공약수(GCD : Greatest Common Divisor)
# 유클리드 호제법
# a를 b로 나눈 나머지를 r
# a와 b의 최대공약수는 b 와 r 의 최대공약수
# 즉 a와 b의 최대공약수는 b와 a%b 의 최대공약수
# gcd(24, 18) = gcd(18, 6) = gcd(6, 0)
# b 가 0 이 되는 순간이 최대 공약수 즉 6
# 최소공배수(LCM : Least Common Multiple
# 최대 공약수를 G라고 했을 때
# a = G * x
# b = G * y
# 이다. G가 최대공약수 그 자체이기에, x, y는 서로소이다.
# 하튼, a * b = G * G * x * y 이다.
# 그럼 최소공배수는 a * b / G 이다.
# 놀랍지 않은가?
아쉬운 점
스스로 독해력이 부족하다 느껴 본 적이 없는데... 문제를 왜 이해를 못 하는 거지?
아직 프로그래밍적 사고력이 훈련이 덜 된 걸까?
오늘의 명언
오늘은 단 하루뿐이다. 어제는 이미 끝났다 - 존 우든
'Today I Lived > 항해99' 카테고리의 다른 글
항해99 - 2주 차 WIL (06.14 ~ 06.20) (0) | 2021.06.20 |
---|---|
[TIL] 2021.06.19 [항해99 / 13일] (0) | 2021.06.19 |
[TIL] 2021.06.17 [항해99 / 11일] (0) | 2021.06.17 |
[TIL] 2021.06.16 [항해99 / 10일] (0) | 2021.06.16 |
[TIL] 2021.06.15 [항해99 / 9일] (0) | 2021.06.15 |
댓글