[νλ‘κ·Έλλ¨Έμ€ | Lv1] μ€ν¨μ¨ (Python) - 2019 KAKAO BLIND RECRUITMENT
https://school.programmers.co.kr/learn/courses/30/lessons/42889
νλ‘κ·Έλλ¨Έμ€
μ½λ μ€μ¬μ κ°λ°μ μ±μ©. μ€ν κΈ°λ°μ ν¬μ§μ λ§€μΉ. νλ‘κ·Έλλ¨Έμ€μ κ°λ°μ λ§μΆ€ν νλ‘νμ λ±λ‘νκ³ , λμ κΈ°μ κΆν©μ΄ μ λ§λ κΈ°μ λ€μ λ§€μΉ λ°μΌμΈμ.
programmers.co.kr
μ²μμ forλ¬Έμ λ리면μ λλ¬κ³Ό ν΄λ¦¬μ΄ κ°μλ₯Ό νλνλ μΈμ κ³μ°νλ€.
νμ§λ§ ν λ¬Έμ μμ μκ° μ΄κ³Όκ° λ΄κ³ , λ€μ λ¬Έμ λ₯Ό 보면μ κ·μΉμ μ°Ύμλλ€.
κ° μ€ν μ΄μ§μ λλ¬ν νλ μ΄μ΄μ μλ μ μ€ν μ΄μ§λ₯Ό ν΄λ¦¬μ΄ν νλ μ΄μ΄ μμ κ°κ³ ,
μ΄μ°¨νΌ μμ κ³Όμ μμ λλ¬νμ§ λͺ»ν νλ μ΄μ΄μ μλ κ±Έλ¬μ§κΈ° λλ¬Έμ μ€ν μ΄μ§μ λλ¬νμ§λ§ ν΄λ¦¬μ΄νμ§ λͺ»ν νλ μ΄μ΄μ μλ stagesμμ ν΄λΉ μ«μ(+1)μ countμ κ°λ€.
λμ λ리λ₯Ό λ§λ€μ΄ κ° μ€ν μ΄μ§ λ³λ‘ μ€ν¨μ¨μ μ μ₯ν΄μ£Όκ³ μ λ ¬ν μΈλ±μ€λ₯Ό λ°ννλ€.
# νλ‘κ·Έλλ¨Έμ€ 42889: μ€ν¨μ¨ (2019 KAKAO BLIND RECRUITMENT)
import numpy
def solution(N, stages):
answer = {}
arrive = [0 for i in range(N)]
stay = [0 for i in range(N)]
arrive[0] = len(stages)
stay[0] = stages.count(1)
answer[1] = stay[0] / arrive[0]
for i in range(1, N):
arrive[i] = arrive[i-1] - stay[i-1]
stay[i] = stages.count(i+1)
if arrive[i] == 0:
answer[i+1] = 0
else:
answer[i+1] = stay[i] / arrive[i]
answer = list(dict(sorted(answer.items(), key=lambda x:x[1], reverse=1)).keys())
return answer