728x90
λ°μν
νλ‘κ·Έλλ¨Έμ€
μ½λ μ€μ¬μ κ°λ°μ μ±μ©. μ€ν κΈ°λ°μ ν¬μ§μ λ§€μΉ. νλ‘κ·Έλλ¨Έμ€μ κ°λ°μ λ§μΆ€ν νλ‘νμ λ±λ‘νκ³ , λμ κΈ°μ κΆν©μ΄ μ λ§λ κΈ°μ λ€μ λ§€μΉ λ°μΌμΈμ.
programmers.co.kr
"""
XYZ λ§νΈλ μΌμ ν κΈμ‘μ μ§λΆνλ©΄ 10μΌ λμ νμ μ격μ λΆμ¬ν©λλ€.
XYZ λ§νΈμμλ νμμ λμμΌλ‘ λ§€μΌ ν κ°μ§ μ νμ ν μΈνλ νμ¬λ₯Ό ν©λλ€.
ν μΈνλ μ νμ ν루μ νλμ©λ§ ꡬ맀ν μ μμ΅λλ€.
μλ°ν μ νμ΄λ μμ μ΄ μνλ μ νκ³Ό μλμ΄ ν μΈνλ λ μ§μ
10μΌ μ°μμΌλ‘ μΌμΉν κ²½μ°μ λ§μΆ°μ νμκ°μ
μ νλ € ν©λλ€.
(μ€λ΅)
μ νμ΄κ° μνλ μ νμ λνλ΄λ λ¬Έμμ΄ λ°°μ΄ wantμ
μ νμ΄κ° μνλ μ νμ μλμ λνλ΄λ μ μ λ°°μ΄ number,
XYZ λ§νΈμμ ν μΈνλ μ νμ λνλ΄λ λ¬Έμμ΄ λ°°μ΄ discountκ° μ£Όμ΄μ‘μ λ,
νμλ±λ‘μ μ νμ΄κ° μνλ μ νμ λͺ¨λ ν μΈ λ°μ μ μλ
νμλ±λ‘ λ μ§μ μ΄ μΌμλ₯Ό return νλ solution ν¨μλ₯Ό μμ±νμμ€.
κ°λ₯ν λ μ΄ μμΌλ©΄ 0μ return ν©λλ€.
"""
def solution(want, number, discount):
answer, wants = 0, []
for v, n in zip(want, number):
wants += [v]*n
wants = sorted(wants)
for i in range(len(discount[:-len(wants)+1])):
answer += int(wants == sorted(discount[i:len(wants)+i]))
return answer
"""
ν μΈμ 보μμ λ€λ‘ μνλμ νλ€μ΄ μ λΆ μμΌλ©΄ 1μ© λν΄μ£Όλ €κ³ νλ€.
- 21~22 line
μνλ μ νμ [μ νλͺ
, κ°―μ] μμ [μ νλͺ
,μ νλͺ
,..]μΌλ‘ λ°κΎΈλ €κ³ νλ€.
κ°μ λ°λ‘ μ ν λ°λ‘λ©΄ λ‘μ§μ΄ λ μ΄λ €μΈ κ² κ°μμ κ·Έλ¬λ€.
- 24 line
sortλ₯Ό κ°κ° ν΄μ€μΌ λ§€λ² μ΄λμ λκ° μλμ§ μ°Ύμ§ μκ³ ν΅μΌλ‘ λΉκ΅ν μ μλ€.
- 25 line
ν μΈμ 보μμ μ λ΄κ° μνλ μ νλ€μ΄ μμ΄μΌνκΈ° λλ¬Έμ μνλ μ νκΈΈμ΄λ§νΌ λ κ²μ¬ν΄λ λλ€.
μ΄μ°¨νΌ discount[len(wants)+1:] λΆν°λ λ€λ‘ κ²μ¬ν΄λ΄μΌ μ νκ°―μ μμ²΄κ° λΆμ‘±νκΈ° λλ¬Έμ΄λ€.
ex) want:['a','a','a'] / discount:['a','a','a','a']λΌλ©΄
discount[2]λΆν° κ²μ¬ν΄λ΄μΌ μνλ κ°μλ 3κ°μΈλ° κ²μ¬ν κΈΈμ΄λ 2κ°λ°μ μλ€.
- 26 line
μνλ μ νκ³Ό ν μΈμ 보λ₯Ό λΉκ΅νλ©΄ true, falseλ‘ λμ€λλ° intνμΌλ‘ λ°κΎΈλ©΄ 1, 0μ΄λ€.
κ·Έλμ κ·Έ κ°μ answerμ λνλ©΄ λλ€.
"""
728x90
λ°μν
λκΈ