ν°μ€ν 리 λ·°
π¨π» μ½λ©ν
μ€νΈ/νλ‘κ·Έλλ¨Έμ€
νλ‘κ·Έλλ¨Έμ€: ν° μ λ§λ€κΈ°
dirmathfl 2020. 10. 23. 23:17728x90
λ°μν
λ¬Έμ
λ¬Έμ νμ΄
μ΄λ€ μ«μμμ Kκ°μ μλ₯Ό μ κ±°νμ λ μ»μ μ μλ κ°μ₯ ν° μ«μλ₯Ό ꡬνλ λ¬Έμ μ΄λ€. λ¬Έμ λ₯Ό νκΈ° μν΄μλ `stack`μ μ¬μ©νλ©΄ ν΄κ²°ν μ μλ€.
- `stack`μ κ°μ΄ μλ€λ©΄ μλ₯Ό `append` νλ€.
- `stack`μ κ°μ΄ μλ€λ©΄ νμ¬μ μμ `top`μ λΉκ΅νμ¬ κ°μ΄ κ°μ΄ ν¬μ§ μλ κ²½μ° `pop`νλ€.
- λ¬Έμ μ μ κ±°ν μ μλ `K`κ° μ£Όμ΄μ§λ―λ‘, μ΄ μμ κ°μ΄ νλ¨νμ¬μΌ νλ€.
- λ§μ½ `K`κ° 0μ΄ λλ€λ©΄ μ¦μ μ€λ¨νκ³ , λ¨μ μλ€μ `stack`μ μ½μ νλ€.
μ½λ
def solution(number, k):
stack = []
for i, num in enumerate(number):
while stack and stack[-1] < num and k > 0:
stack.pop()
k -= 1
if k == 0:
stack += number[i:]
break
stack.append(num)
stack = stack[:-k] if k > 0 else stack
return "".join(stack)
728x90
λ°μν
'π¨βπ» μ½λ©ν μ€νΈ > νλ‘κ·Έλλ¨Έμ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
νλ‘κ·Έλλ¨Έμ€: λλμ§ (0) | 2020.10.24 |
---|---|
νλ‘κ·Έλλ¨Έμ€: μ‘°μ΄μ€ν± (0) | 2020.10.23 |
νλ‘κ·Έλλ¨Έμ€: SQL - IS NULL (0) | 2020.10.21 |
νλ‘κ·Έλλ¨Έμ€: SQL - SUM, MAX, MIN (0) | 2020.10.21 |
νλ‘κ·Έλλ¨Έμ€: SQL - SELECT (0) | 2020.10.21 |
λκΈ
κΈ λ³΄κ΄ν¨
μ΅κ·Όμ μ¬λΌμ¨ κΈ
μ΅κ·Όμ λ¬λ¦° λκΈ