π¬ λ¬Έμ μ€λͺ
: μ΅λ곡μ½μμ μ΅μ곡배μ
λ μλ₯Ό μ λ ₯λ°μ λ μμ μ΅λ곡μ½μμ μ΅μ곡배μλ₯Ό λ°ννλ ν¨μ, solutionμ μμ±ν΄ 보μΈμ. λ°°μ΄μ 맨 μμ μ΅λ곡μ½μ, κ·Έλ€μ μ΅μ곡배μλ₯Ό λ£μ΄ λ°ννλ©΄ λ©λλ€. μλ₯Ό λ€μ΄ λ μ 3, 12μ μ΅λ곡μ½μλ 3, μ΅μ곡배μλ 12μ΄λ―λ‘ solution(3, 12)λ [3, 12]λ₯Ό λ°νν΄μΌ ν©λλ€.
π μ ν μ¬ν
- λ μλ 1μ΄μ 1000000μ΄νμ μμ°μμ λλ€.
π‘ λμ νμ΄
def solution(n, m):
answer = []
for i in range (min(n,m), 0, -1):
if (n % i == 0) and (m % i == 0):
answer.append(i)
break
for j in range ( max(n,m), m*n+1 ):
if (j % n ==0) and ( j%m ==0):
answer.append(j)
break
return answer
π‘ λ€λ₯Έ ν΄μ€
* νμ΄μ¬ μ΅μ곡배μ, μ΅λ곡μ½μλ₯Ό ꡬνλ λ΄μ₯ν¨μλ‘ μ½κ² ꡬν μ μμ
gcd(greatest common divisor)
lcm(least common multiple)
from math import gcd
def solution(n, m):
gcd_num = gcd(n, m)
lcm_num = n*m // gcd(n,m)
answer = [gcd_num, lcm_num]
return answer
μ ν΄λ¦¬λ νΈμ λ²
μ΅λ곡μ½μλ₯Ό μ°Ύμ λ, μμ μμ κ²½μ°μλ μ¬λμ΄ μ§μ κ³μ°ν΄μ μ°Ύμ μ μμ§λ§, μκ° λ¬΄μ§μ₯ 컀μ§λ€λ©΄ μ»΄ν¨ν°λ₯Ό μ¨μΌ ν©λλ€. κ·Έλ°λ° μ»΄ν¨ν°λ₯Ό μ΄μ©ν΄ μ΅λ곡μ½μλ₯Ό μ°Ύμ λλ, μμ κ°μ΄ μμΈμλΆν΄λ₯Ό νκΈ° 보λ€λ μ ν΄λ¦¬λ νΈμ λ²μ΄λΌλ μκ³ λ¦¬μ¦(λ¬Έμ λ₯Ό νκΈ° μν΄ μ ν΄μ§ μ μ°¨)λ₯Ό μ¬μ©νλ κ²μ΄ λ λΉ λ¦ λλ€. μ ν΄λ¦¬λ νΈμ λ²μ λ€μ μ 리λ‘λΆν° κΈ°μΈν©λλ€.
Aλ₯Ό Bλ‘ λλ λͺ«μ QλΌ νκ³ , λλ¨Έμ§λ₯Ό Rμ΄λΌ νμ. μ΄ λ, gcd(A,B)=gcd(B,R)μ΄λ€.
μμλ₯Ό λ³΄κ² μ΅λλ€. 60λ₯Ό 24λ‘ λλ λͺ«μ 2μ΄κ³ λλ¨Έμ§λ 12μ λλ€. μ¦, 60=24×2+12μ λλ€. κ³Όμ° gcd(60,24)=gcd(24,12)=12μμ νμΈν μ μμ΅λλ€. μ΄ μ 리λ₯Ό μ΄μ©ν μ ν΄λ¦¬λ νΈμ λ² μκ³ λ¦¬μ¦μ λ€μκ³Ό κ°μ΅λλ€.
- Aμ Bμ μ΅λ곡μ½μλ₯Ό ꡬνκΈ° μν΄μ Aλ₯Ό Bλ‘ λλ λλ¨Έμ§ R1μ ꡬν©λλ€.
- Bλ₯Ό R1μΌλ‘ λλ λλ¨Έμ§ R2λ₯Ό ꡬν©λλ€.
- R1μ R2λ‘ λλ λλ¨Έμ§ R3λ₯Ό ꡬν©λλ€.
- μ΄ κ³Όμ μ κ³μ λ°λ³΅νμ¬, μ΄λ ν μͺ½μ΄ λλμ΄λ¨μ΄μ§ λκΉμ§ λ°λ³΅ν©λλ€. μ΄ μ§μ μ»μ λλ¨Έμ§κ° μ΅λ곡μ½μμ λλ€.
ππ» λ¬Έμ λ°λ‘κ°κΈ°
'Coding > Code in the Morning' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
211228_Code in the morning (0) | 2021.12.28 |
---|---|
211227_Code in the morning (0) | 2021.12.27 |
211222_Code in the morning (0) | 2021.12.23 |
211206_Code in the morning (0) | 2021.12.07 |
211206_Code at Night βοΈ (0) | 2021.12.06 |