λ¬Έμ
νλ‘κ·Έλλ¨Έμ€ νμμλ κΈ°λ₯ κ°μ μμ μ μν μ€μ λλ€. κ° κΈ°λ₯μ μ§λκ° 100%μΌ λ μλΉμ€μ λ°μν μ μμ΅λλ€.
λ, κ° κΈ°λ₯μ κ°λ°μλλ λͺ¨λ λ€λ₯΄κΈ° λλ¬Έμ λ€μ μλ κΈ°λ₯μ΄ μμ μλ κΈ°λ₯λ³΄λ€ λ¨Όμ κ°λ°λ μ μκ³ , μ΄λ λ€μ μλ κΈ°λ₯μ μμ μλ κΈ°λ₯μ΄ λ°°ν¬λ λ ν¨κ» λ°°ν¬λ©λλ€.
λ¨Όμ λ°°ν¬λμ΄μΌ νλ μμλλ‘ μμ μ μ§λκ° μ ν μ μ λ°°μ΄ progressesμ κ° μμ μ κ°λ° μλκ° μ ν μ μ λ°°μ΄ speedsκ° μ£Όμ΄μ§ λ κ° λ°°ν¬λ§λ€ λͺ κ°μ κΈ°λ₯μ΄ λ°°ν¬λλμ§λ₯Ό return νλλ‘ solution ν¨μλ₯Ό μμ±νμΈμ.
μ ν μ¬ν
- μμ μ κ°μ(progresses, speedsλ°°μ΄μ κΈΈμ΄)λ 100κ° μ΄νμ λλ€.
- μμ μ§λλ 100 λ―Έλ§μ μμ°μμ λλ€.
- μμ μλλ 100 μ΄νμ μμ°μμ λλ€.
- λ°°ν¬λ ν루μ ν λ²λ§ ν μ μμΌλ©°, ν루μ λμ μ΄λ£¨μ΄μ§λ€κ³ κ°μ ν©λλ€. μλ₯Ό λ€μ΄ μ§λμ¨μ΄ 95%μΈ μμ μ κ°λ° μλκ° ν루μ 4%λΌλ©΄ λ°°ν¬λ 2μΌ λ€μ μ΄λ£¨μ΄μ§λλ€.
λμ μ½λ
def solution(progresses, speeds):
arr = []
me = []
# νμ΅μ§λ 100 κΈ°μ€ μΌλ§λ λ¨μλμ§ μ°¨μ΄λ₯Ό λνλ΄λ λ°°μ΄μ λ§λ λ€.
dif = [100 - i for i in progresses]
cnt = 0
cnt_arr =[]
# speeds λ₯Ό κΈ°μ€μΌλ‘ λ°°ν¬κΉμ§ 걸리λ λ μ§λ₯Ό κ³μ°νλ€.
for i in range(len(dif)):
if dif[i] % speeds[i] == 0:
answer = dif[i] / speeds[i]
arr.append(int(answer))
else:
answer = (dif[i] // speeds[i]) + 1
arr.append(int(answer))
print("arr",arr)
# μ§μ μ μμλ³΄λ€ νμ¬μ μμκ° λ ν¬λ€λ©΄ νμ¬μ μμλ₯Ό μ§μ μ μμμ λμΌν μλ‘ λ°κΏμ€λ€.
while len(arr) >= len(me):
for i in arr:
me.append(i)
if len(me) > 1:
if me[-2] > me[-1]:
me.pop(-1)
me.append(me[-1])
me = me[0:len(arr)]
print(me)
list1 = list(set(me))
list1.sort(reverse=False)
print(list1)
# set ν¨μλ₯Ό νμ©ν΄ κ° μμμ κ°μλ₯Ό λνλ΄λ λ°°μ΄μ λ§λ€μ΄μ€λ€.
for i in list1:
if i in me:
cnt_arr.append(me.count(i))
return cnt_arr
ν΄μ€ μ½λ
import math
def solution(progresses, speeds):
date_left = []
answer = []
# μ§λ 100%λ₯Ό λ¬μ±νκΈ° μν΄ κ±Έλ¦¬λ λ μ§λ₯Ό λ°°μ΄μ μΆκ°νλ€.
for i in range(len(progresses)):
progress_left = 100 - progresses[i]
date_left.append(math.ceil(progress_left/speeds[i]))
# leftλ³΄λ€ ν° μλ₯Ό λ§λκΈ° μ κΉμ§ μ§λκ°λ μμ κ°μλ₯Ό
# resultμ λνλ©΄μ 첫λ²μ§Έ μμλ₯Ό pop νλ κ²μ λ°λ³΅νλ€.
while date_left:
left = date_left.pop(0)
result = 1
while len(date_left) != 0 and left >= date_left[0]:
result += 1
date_left.pop(0)
answer.append(result)
return answer
λΆμ > λμ μ½λμ λ€λ₯Έ μ μ μΌλ¨ μ§λμ¨μ μ±μ°κΈ°κΉμ§ 걸리λ μκ°μ, λλ΄μ λ λλ¨Έμ§κ° 0μΈ κ²½μ°μ κ·Έλ μ§ μμ κ²½μ°λ₯Ό μΌμΌμ΄ ꡬν΄μ€¬μ§λ§ μ΄ μ½λλ math.ceil μ΄λΌλ μ¬λ¦Όμ λνλ΄λ ν¨μλ₯Ό μ΄μ©ν΄ κ°νΈνκ² κ΅¬ννλ€λ μ μ΄λ€. κ·Έλ¦¬κ³ λλ λΉ μ€νμ 쑰건μ λ§λ μλ₯Ό μΆκ°ν΄μ£Όλ λ°©λ²μΌλ‘ ꡬνν λ°λ©΄, μ΄ μ½λλ 0λ²μ§Έ μ½λλ₯Ό κΈ°μ€μΌλ‘ κ·Έ μλ³΄λ€ ν° μλ₯Ό λ§λκΈ° μ κΉμ§ κ±°μΉλ μμ κ°μλ₯Ό ꡬνλ©΄μ, λΉκ΅μ κΈ°μ€μ΄ λμλ 첫λ²μ§Έ μμλ₯Ό κ³μν΄μ popν΄μ£Όλ λ°©λ²μ μ ννμλ€. κ·Έλ κ² νλ, μ’ λ κ°νΈνκ² κ°μ ꡬν μ μμλ€.
'Algorithm > Programmers' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Programmers] μμ£Όνμ§ λͺ»ν μ μ (0) | 2022.04.13 |
---|---|
[Programmers] μ νλ²νΈ λͺ©λ‘ (0) | 2022.04.13 |
[Programmers] μ΅λκ°κ³Ό μ΅μκ° (0) | 2022.04.12 |
[Programmers] νλ ¬μ λ§μ (0) | 2022.04.12 |
[Programmers] μΉ΄ν« (0) | 2022.04.12 |