πAlgorithm/π₯programmers
[programmers] 124 λλΌμ μ«μ
λΏμΌ._.
2021. 12. 1. 12:27
μ½λ© ν μ€νΈ μ°μ΅
<124 λλΌμ μ«μ>
λ¬Έμ μ€λͺ
124 λλΌκ° μμ΅λλ€. 124 λλΌμμλ 10μ§λ²μ΄ μλ λ€μκ³Ό κ°μ μμ λ€λ§μ κ·μΉμΌλ‘ μλ₯Ό ννν©λλ€.
124 λλΌμλ μμ°μλ§ μ‘΄μ¬ν©λλ€. 124 λλΌμλ λͺ¨λ μλ₯Ό ννν λ 1, 2, 4λ§ μ¬μ©ν©λλ€.
μλ₯Ό λ€μ΄μ 124 λλΌμμ μ¬μ©νλ μ«μλ λ€μκ³Ό κ°μ΄ λ³νλ©λλ€.
μμ°μ nμ΄ λ§€κ°λ³μλ‘ μ£Όμ΄μ§ λ, nμ 124 λλΌμμ μ¬μ©νλ μ«μλ‘ λ°κΎΌ κ°μ return νλλ‘ solution ν¨μλ₯Ό μμ±ν΄ μ£ΌμΈμ.
μ ν μ¬ν
- nμ 500,000,000 μ΄νμ μμ°μμ λλ€.
λ¬Έμ νμ΄
- my solution
def solution(n):
answer = ''
arr=['4','1','2']
while True:
answer+=arr[n%3] # λλ¨Έμ§ idxμ ν΄λΉνλ κ°
if n%3==0: # 3μΌλ‘ λλμ΄λ¨μ΄μ§λ©΄ -1
n=n//3-1
else:
n=n//3
if n==0: # μ’
λ£ μ‘°κ±΄
break
answer=answer[::-1] # λ€μ§κΈ°
return answer
1) κ·μΉμ μ°Ύμ [4,1,2]λ‘ list μ μΈ
2) whileλ¬Έ : 3μΌλ‘ λλ λλ¨Έμ§ κ°μ indexλ‘ μ€μ
3μΌλ‘ λλμ΄ λ¨μ΄μ§λ©΄ λͺ«μ 1μ© λΉΌμΌ νλ κ·μΉμ μ°Ύμ
λλμ΄ λ¨μ΄μ§μ§ μλλ€λ©΄ λͺ« μ μ₯
μ’ λ£ μ‘°κ±΄: n == 0
3) answerμ ꡬν κ°μ λ€μ§μ κ°
μκ°π€
μ‘°κΈ νΌλμ€λ¬μ μ§λ§ μ€μ λ‘ κ΅¬νμ κΈΈμ§ μμλ λ¬Έμ !
3μΌλ‘ λλμ΄ λ¨μ΄μ§ λ 1μ λΉΌμΌ νλ€λ μ¬μ€μ μμ차리면 ,, κΈλ°© ν μ μμλ€.
λ€λ₯΄κ² νΌ μ¬λλ€μ΄ μμ§λ§,, κ·Έκ² λ§λ κ² κ°μ§λ§,, μ΄λ κ²λ νλ¦°λ€..(?)
μΆμ²: νλ‘κ·Έλλ¨Έμ€ μ½λ© ν μ€νΈ μ°μ΅, https://programmers.co.kr/learn/challenges