λ¬Έμ μ€λͺ
μ΄ λ¨μλ‘ κΈ°λ‘λ μ£Όμκ°κ²©μ΄ λ΄κΈ΄ λ°°μ΄ pricesκ° λ§€κ°λ³μλ‘ μ£Όμ΄μ§ λ, κ°κ²©μ΄ λ¨μ΄μ§μ§ μμ κΈ°κ°μ λͺ μ΄μΈμ§λ₯Ό return νλλ‘ solution ν¨μλ₯Ό μμ±νμΈμ.
μ νμ¬ν
- pricesμ κ° κ°κ²©μ 1 μ΄μ 10,000 μ΄νμΈ μμ°μμ λλ€.
- pricesμ κΈΈμ΄λ 2 μ΄μ 100,000 μ΄νμ λλ€.
μ μΆλ ₯ μ
μ
μΆλ ₯ μ μ€λͺ
- 1μ΄ μμ μ β©1μ λκΉμ§ κ°κ²©μ΄ λ¨μ΄μ§μ§ μμμ΅λλ€.
- 2μ΄ μμ μ β©2μ λκΉμ§ κ°κ²©μ΄ λ¨μ΄μ§μ§ μμμ΅λλ€.
- 3μ΄ μμ μ β©3μ 1μ΄λ€μ κ°κ²©μ΄ λ¨μ΄μ§λλ€. λ°λΌμ 1μ΄κ° κ°κ²©μ΄ λ¨μ΄μ§μ§ μμ κ²μΌλ‘ λ΄ λλ€.
- 4μ΄ μμ μ β©2μ 1μ΄κ° κ°κ²©μ΄ λ¨μ΄μ§μ§ μμμ΅λλ€.
- 5μ΄ μμ μ β©3μ 0μ΄κ° κ°κ²©μ΄ λ¨μ΄μ§μ§ μμμ΅λλ€.
νμ΄ μ½λ
from collections import deque
def solution(prices):
answer = []
queue = deque(prices)
while queue:
val = queue.popleft()
cnt = 0
for q in queue:
cnt += 1
if q < val:
break
answer.append(cnt)
return answer
λ¬Έμ μ μ€λͺ λ λΆμ€νκ³ , μμ λ νλλ°μ μμ΄μ μ½κ° μκ°νλλ° μ λ₯Ό λ¨Ήμλ€.
μ΄ λ¬Έμ λ₯Ό νΈλ λ°©λ²μ, λΈλ£¨νΈν¬μ€λ₯Ό μ¬μ©νκ±°λ ν/μ€νμ μ¬μ©νλ λ°©λ²μ΄ μλ€.
νμλ νλ₯Ό μ΄μ©ν΄ νμ΄νμλ€.
μ£Όμ΄μ§ pricesλ₯Ό λͺ¨λ νμ λ£κ³ , μμ νλλ₯Ό λ½λλ€.
μ΄ν ν μμ λ¨μ μμμ λΉκ΅νλ©΄μ μ²μ λ½μ κ°λ³΄λ€ μμμ§λ€λ©΄ breakλ₯Ό κ±Έκ³ , μΉ΄μ΄ν μ λ©μΆλ€.
μ΄λ₯Ό λ°λ³΅νλ©΄ ν΄κ²°ν μ μλ€.
'π μ½λ©ν μ€νΈ λλΉ : PS' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[νλ‘κ·Έλλ¨Έμ€] νΌλ‘λ (level2, python) (0) | 2022.09.13 |
---|---|
[νλ‘κ·Έλλ¨Έμ€] λ¨μ΄ λ³ν (level3, python) (0) | 2022.09.13 |
[νλ‘κ·Έλλ¨Έμ€] λ λ§΅κ² (level2, python) (0) | 2022.09.12 |
[νλ‘κ·Έλλ¨Έμ€] [3μ°¨] μμΆ (level2, python) (0) | 2022.09.12 |
[νλ‘κ·Έλλ¨Έμ€] νκ² λλ² (level2, python) (0) | 2022.09.12 |