π νμ΄μ¬ μΌλ‘ νμ΄
π λ¬Έμ λ§ν¬ :
νλ‘κ·Έλλ¨Έμ€
μ½λ μ€μ¬μ κ°λ°μ μ±μ©. μ€ν κΈ°λ°μ ν¬μ§μ λ§€μΉ. νλ‘κ·Έλλ¨Έμ€μ κ°λ°μ λ§μΆ€ν νλ‘νμ λ±λ‘νκ³ , λμ κΈ°μ κΆν©μ΄ μ λ§λ κΈ°μ λ€μ λ§€μΉ λ°μΌμΈμ.
programmers.co.kr
π λ¬Έμ μ€λͺ :
μ½λλ μμ΄ λ¨μ΄κ° μ ν μΉ΄λ λμΉ λ κ°λ₯Ό μ λ¬Όλ‘ λ°μμ΅λλ€. μ½λλ λ€μκ³Ό κ°μ κ·μΉμΌλ‘ μΉ΄λμ μ ν λ¨μ΄λ€μ μ¬μ©ν΄ μνλ μμμ λ¨μ΄ λ°°μ΄μ λ§λ€ μ μλμ§ μκ³ μΆμ΅λλ€.
- μνλ μΉ΄λ λμΉμμ μΉ΄λλ₯Ό μμλλ‘ ν μ₯μ© μ¬μ©ν©λλ€.
- ν λ² μ¬μ©ν μΉ΄λλ λ€μ μ¬μ©ν μ μμ΅λλ€.
- μΉ΄λλ₯Ό μ¬μ©νμ§ μκ³ λ€μ μΉ΄λλ‘ λμ΄κ° μ μμ΅λλ€.
- κΈ°μ‘΄μ μ£Όμ΄μ§ μΉ΄λ λμΉμ λ¨μ΄ μμλ λ°κΏ μ μμ΅λλ€.
μλ₯Ό λ€μ΄ 첫 λ²μ§Έ μΉ΄λ λμΉμ μμλλ‘ ["i", "drink", "water"], λ λ²μ§Έ μΉ΄λ λμΉμ μμλλ‘ ["want", "to"]κ° μ νμμ λ ["i", "want", "to", "drink", "water"] μμμ λ¨μ΄ λ°°μ΄μ λ§λ€λ €κ³ νλ€λ©΄ 첫 λ²μ§Έ μΉ΄λ λμΉμμ "i"λ₯Ό μ¬μ©ν ν λ λ²μ§Έ μΉ΄λ λμΉμμ "want"μ "to"λ₯Ό μ¬μ©νκ³ μ²« λ²μ§Έ μΉ΄λλμΉμ "drink"μ "water"λ₯Ό μ°¨λ‘λλ‘ μ¬μ©νλ©΄ μνλ μμμ λ¨μ΄ λ°°μ΄μ λ§λ€ μ μμ΅λλ€.
λ¬Έμμ΄λ‘ μ΄λ£¨μ΄μ§ λ°°μ΄ cards1, cards2μ μνλ λ¨μ΄ λ°°μ΄ goalμ΄ λ§€κ°λ³μλ‘ μ£Όμ΄μ§ λ, cards1κ³Ό cards2μ μ ν λ¨μ΄λ€λ‘ goalλ₯Ό λ§λ€ μλ€λ©΄ "Yes"λ₯Ό, λ§λ€ μ μλ€λ©΄ "No"λ₯Ό returnνλ solution ν¨μλ₯Ό μμ±ν΄μ£ΌμΈμ.
π μ ν μ¬ν
- 1 ≤ cards1μ κΈΈμ΄, cards2μ κΈΈμ΄ ≤ 10
- 1 ≤ cards1[i]μ κΈΈμ΄, cards2[i]μ κΈΈμ΄ ≤ 10
- cards1κ³Ό cards2μλ μλ‘ λ€λ₯Έ λ¨μ΄λ§ μ‘΄μ¬ν©λλ€.
- 2 ≤ goalμ κΈΈμ΄ ≤ cards1μ κΈΈμ΄ + cards2μ κΈΈμ΄
- 1 ≤ goal[i]μ κΈΈμ΄ ≤ 10
- goalμ μμλ cards1κ³Ό cards2μ μμλ€λ‘λ§ μ΄λ£¨μ΄μ Έ μμ΅λλ€.
- cards1, cards2, goalμ λ¬Έμμ΄λ€μ λͺ¨λ μνλ²³ μλ¬Έμλ‘λ§ μ΄λ£¨μ΄μ Έ μμ΅λλ€.
π μ μΆλ ₯ μ
μΆμΈ‘)
μλ‘ λ€λ₯Έ λ¨μ΄λ§ μ‘΄μ¬νλ€. νλ² μ¬μ©ν μΉ΄λλ λλ² μ¬μ© λΆκ°. μΉ΄λλ₯Ό μ¬μ©νμ§ μκ³ λ€μ μΉ΄λλ‘ λͺ» λμ΄κ°. λ¨μ΄ μμ λ³ν λΆκ°.
goalμ κΈ°μ€μΌλ‘ forλ¬Έμ λλ €μ λκ°μ§ μΉ΄λ λμΉ κ°μ₯ μ²μκ³Ό λΉκ΅ν΄μ μ²μκ³Ό μΌμΉνλ©΄ Queue λ°©μμΌλ‘ popν΄μ μ κ±°
μ΄λ° λ°©μμΌλ‘ μμλλ‘ μΉ΄λ μ¬μ©ν΄μ μμ κ³ goal λ§μ§λ§ κΉμ§ μΌμΉνλ κ²μ νμΈν΄ Goalμ λ§λ€μ μλμ§ νμΈ
μμ€μ½λ)
* 1μ°¨) μ€ν¨ : 88 μ
def solution(cards1, cards2, goal):
for one in goal:
if len(cards1) != 0 and cards1[0] == one :
cards1.pop(0)
elif len(cards2) != 0 and cards2[0] == one :
cards2.pop(0)
if len(cards1) == 0 and len(cards2) == 0 :
return "Yes"
else :
return "No"
* 2μ°¨) μ±κ³΅
def solution(cards1, cards2, goal):
for one in goal:
if len(cards1) != 0 and cards1[0] == one :
cards1.pop(0)
elif len(cards2) != 0 and cards2[0] == one :
cards2.pop(0)
else :
return "No"
return "Yes"
리뷰)
1μ°¨νΌλλ°±)
μΉ΄λλ₯Ό κΌ λ€ μΈ νμμμ΄ μμλλ‘ μνλ Goalμ λ§λ€μ΄ λΌμλ§ μμΌλ©΄ λ¨
κ·Έλ¬λ©΄ λ¨μ μΉ΄λ λμΉμ μ¬μ΄μ¦κ° μ€μνμ§ μμμ§κ³ , λ§λ€ μ μλ μκ°μ 체ν¬ν΄μ returnνλ©΄ λλ€.
Goalμ΄ λλ λ κΉμ§ λ§λ€μ μλ μκ°μ΄ μμλ€λ©΄ μ λΆ λ§λ€ μ μλ κ±°λ Yes!!
'Coding Test > Algorithm' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
Programmers] Nκ°μ μ΅μ곡배μ (0) | 2023.03.07 |
---|---|
Programmers] μ΅λκ°κ³Ό μ΅μκ° (0) | 2023.03.06 |
Programmers] [1μ°¨] λΉλ°μ§λ (0) | 2023.02.28 |
Programmers] μΌμ΄μ¬ (0) | 2023.02.23 |
Programmers] κ°μΈμ 보 μμ§ μ ν¨κΈ°κ° (0) | 2023.02.22 |