[νλ‘κ·Έλλ¨Έμ€] λ‘λμ μ΅κ³ μμμ μ΅μ μμ (level 1)
λ¬Έμ λ§ν¬
https://programmers.co.kr/learn/courses/30/lessons/77484/
μ½λ©ν μ€νΈ μ°μ΅ - λ‘λμ μ΅κ³ μμμ μ΅μ μμ
λ‘λ 6/45(μ΄ν 'λ‘λ'λ‘ νκΈ°)λ 1λΆν° 45κΉμ§μ μ«μ μ€ 6κ°λ₯Ό μ°μ΄μ λ§νλ λνμ μΈ λ³΅κΆμ λλ€. μλλ λ‘λμ μμλ₯Ό μ νλ λ°©μμ λλ€. 1 μμ λΉμ²¨ λ΄μ© 1 6κ° λ²νΈκ° λͺ¨λ μΌμΉ 2 5κ° λ²νΈ
programmers.co.kr
λμ νμ΄
- λ§μΆ κ°―μλ₯Ό 리μ€νΈμ λ£μ΄μ λ±μλ μΈλ±μ€λ‘ λ½μμ¨λ€.
- lottosμ win nums μ¬μ΄μμ κ²ΉμΉλ λ²νΈλ₯Ό ν©μ§ν©μΌλ‘ ꡬν λ€, κ°―μλ₯Ό μΈμ΄ μ΅μ μμλ₯Ό ꡬνλ€.
- 0μΌ κ²½μ°μλ '무쑰건 λ§μΆλ€'λΌλ μκ°μΌλ‘ μ΅κ³ μμλ₯Ό ꡬν μ μλ€. λ°λΌμ μ΅μ μμλ‘ μ°μ λλ κ°―μμ 0μ κ°―μλ₯Ό λν΄μ€λ€.
- lottosκ° μ λΆ 0 μ΄μ΄μ len(same) μ΄ 0μ΄λμ€λ κ²½μ°λ₯Ό λ°λ‘ μ²λ¦¬ν΄μ€μΌ νλ€. (ifλ¬ΈμΌλ‘ μ²λ¦¬νλ€.)
def solution(lottos, win_nums):
price = [0, 6, 5, 4, 3, 2, 1] #μΈλ±μ€
same = set(lottos) & set(win_nums)
min_price = price.index(len(same))
if min_price == 0 :
min_price = 6
if 0 in lottos:
max_price = price.index(len(same)+lottos.count(0))
else:
max_price = min_price
return [max_price, min_price]
λ€λ₯Έμ¬λ νμ΄
λλ ν©μ§ν©μ μ§μ€νμ¬ 'κ²ΉμΉλ μμ μ«μλ₯Ό μΈμ΄μ€λ€'λΌλ κ°λ μ μ§μ€νλ€. νμ§λ§ μ’μμλ₯Ό κ°μ₯ λ§μ΄ λ°μ νμ΄λ₯Ό μ΄ν΄λ³΄λ©΄, λκ°μ 리μ€νΈλ₯Ό 'λΉκ΅'λ§ ν΄μ, lottosμ μλ μκ° win_numsμ μλκ°? λ₯Ό μ΄ν΄λ³΄λ©΄μ answerμ +1 μ© νλ λ°©λ²μ μ¬μ©νλ€. λμ²λΌ lottosκ° μ λΆ 0μΈκ²½μ°λ₯Ό μ²λ¦¬ν΄μ£Όλ κ³Όμ μ΄ μμ΄λ λμ΄ μ½λκ° ν¨μ¬ κ°κ²°νλ€. μ΄λ κ² λκ°μ 리μ€νΈλ₯Ό λΉκ΅ν΄μ answer μ κ΅¬ν΄ μ΅μ μμλ₯Ό ꡬνκ³ , 0μ μΈμ΄μ λν΄μ£Όλ©΄μ μ΅κ³ μμλ₯Ό ꡬνλ€.
μ무λλ μ½λλ₯Ό κ°κ²°νκ³ , κΉλνκ² μ§λ κ²μ λν΄μλ μ§μμ μΈ λ¬Έμ νμ΄μ μ°μ΅μ΄ νμν κ²κ°λ€ γ γ
def solution(lottos, win_nums):
rank=[6,6,5,4,3,2,1]
cnt_0 = lottos.count(0)
ans = 0
for x in win_nums:
if x in lottos:
ans += 1
return rank[cnt_0 + ans],rank[ans]