๐กsolutions )
โ ๋ก์ง์ ํฌ๊ฒ ๋ ํํธ๋ก ๋๋๋ค. โ ๋จ์ ์์ ์ผ์๋ฅผ ๊ตฌํ๊ธฐ โก์ผ์ ์์, ์์ ์ผ์๋ฅผ ๊ณ ๋ คํด ๋ฐฐํฌ ์ ๋ช๊ฐ์ ๊ธฐ๋ฅ์ ๋ฐฐํฌํ๋ ์ง ๊ณ์ฐํ๊ธฐ
โ ๋ ๋ฒ์งธ ํํธ์์ ๊ณ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์๋๋ฐ, ๋คํํ ๊ทน๋ณต. ํด๋น ๊ฐ์๋ ์ธ๋ฑ์ค๋ก ์ ๊ทผํ๊ณ ์ฒ์ ๊ธฐ์ค์ผ๋ก ์ก๋ ์ธ๋ฑ์ค๋ฅผ start๋ก ์ ์ํ๊ณ ์ ๋ฐ์ดํธ ํ๋ฉฐ ์์ ์ผ์๋ฅผ ๋น๊ตํ๋ ๊ฒ์ด ํฌ์ธํธ
๐ซcode )
def solution(progresses, speeds):
# ๋จผ์ ๋จ์ ์์
์ผ์๋ฅผ ๊ตฌํด ๋ฆฌ์คํธ์ ๋ด๋๋ค
cnt_lst = []
for i in range(len(progresses)):
# ์ง๋์จ 100%์์ ํ์ฌ ์งํ๋ ์๋ฃ์จ์ ๋นผ์ฃผ๊ณ
tmp = (100 - progresses[i])
if (tmp % speeds[i]):
# ํ๋ฃจ ๊ฐ๋ฐ ์๋๋ก ๋๋๊ธฐ(์ฌ๋ฆผ)
cnt = tmp // speeds[i] + 1
cnt_lst.append(cnt)
else:
# ๋๋์ด ๋จ์ด์ง๋ฉด ๋ชซ ๊ทธ๋๋ก ๋ฆฌ์คํธ์ ๋ด๊ธฐ
cnt = tmp // speeds[i]
cnt_lst.append(cnt)
# ์ฌ๊ธฐ์๋ถํฐ ๋ฐฐํฌ๋ง๋ค ๋ช ๊ฐ์ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๋๋ ์ง ํ์ธ
start = 0 # ์์
์ผ ์๋ฅผ ๋น๊ตํ๊ธฐ ์ํ ๊ธฐ์ค์ด ๋๋ ์ธ๋ฑ์ค
result = []
for idx in range(len(cnt_lst)):
if cnt_lst[start] < cnt_lst[idx]:
# ๊ธฐ์ค๊ฐ ๋ณด๋ค ๊ทธ ๋ค์๊ฐ์ด ํฐ ๊ฒฝ์ฐ์ ๊ธฐ๋ฅ์ ๊ฐ์๋ฅผ ์ธ๊ณ
result.append(idx-start)
# ๊ธฐ์ค๊ฐ ์ธ๋ฑ์ค ์
๋ฐ์ดํธ
start = idx
result.append(len(cnt_lst)-start)
return result
๐ description )
๋ฌธ์ ์ถ์ฒ : https://programmers.co.kr/learn/courses/30/lessons/42586?language=python3
๋ฌธ์ ์ค๋ชํ๋ก๊ทธ๋๋จธ์ค ํ์์๋ ๊ธฐ๋ฅ ๊ฐ์ ์์ ์ ์ํ ์ค์ ๋๋ค. ๊ฐ ๊ธฐ๋ฅ์ ์ง๋๊ฐ 100%์ผ ๋ ์๋น์ค์ ๋ฐ์ํ ์ ์์ต๋๋ค.
๋, ๊ฐ ๊ธฐ๋ฅ์ ๊ฐ๋ฐ์๋๋ ๋ชจ๋ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋ค์ ์๋ ๊ธฐ๋ฅ์ด ์์ ์๋ ๊ธฐ๋ฅ๋ณด๋ค ๋จผ์ ๊ฐ๋ฐ๋ ์ ์๊ณ , ์ด๋ ๋ค์ ์๋ ๊ธฐ๋ฅ์ ์์ ์๋ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๋ ๋ ํจ๊ป ๋ฐฐํฌ๋ฉ๋๋ค.
๋จผ์ ๋ฐฐํฌ๋์ด์ผ ํ๋ ์์๋๋ก ์์ ์ ์ง๋๊ฐ ์ ํ ์ ์ ๋ฐฐ์ด progresses์ ๊ฐ ์์ ์ ๊ฐ๋ฐ ์๋๊ฐ ์ ํ ์ ์ ๋ฐฐ์ด speeds๊ฐ ์ฃผ์ด์ง ๋ ๊ฐ ๋ฐฐํฌ๋ง๋ค ๋ช ๊ฐ์ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๋๋์ง๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํ์ธ์.
์ ํ ์ฌํญ
- ์์ ์ ๊ฐ์(progresses, speeds๋ฐฐ์ด์ ๊ธธ์ด)๋ 100๊ฐ ์ดํ์ ๋๋ค.
- ์์ ์ง๋๋ 100 ๋ฏธ๋ง์ ์์ฐ์์ ๋๋ค.
- ์์ ์๋๋ 100 ์ดํ์ ์์ฐ์์ ๋๋ค.
- ๋ฐฐํฌ๋ ํ๋ฃจ์ ํ ๋ฒ๋ง ํ ์ ์์ผ๋ฉฐ, ํ๋ฃจ์ ๋์ ์ด๋ฃจ์ด์ง๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์ง๋์จ์ด 95%์ธ ์์ ์ ๊ฐ๋ฐ ์๋๊ฐ ํ๋ฃจ์ 4%๋ผ๋ฉด ๋ฐฐํฌ๋ 2์ผ ๋ค์ ์ด๋ฃจ์ด์ง๋๋ค.
์ ์ถ๋ ฅ ์
progresses speeds return
[93,30,55] [1,30,5] [2,1]
์ ์ถ๋ ฅ ์ ์ค๋ช์ฒซ ๋ฒ์งธ ๊ธฐ๋ฅ์ 93% ์๋ฃ๋์ด ์๊ณ ํ๋ฃจ์ 1%์ฉ ์์ ์ด ๊ฐ๋ฅํ๋ฏ๋ก 7์ผ๊ฐ ์์ ํ ๋ฐฐํฌ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
๋ ๋ฒ์งธ ๊ธฐ๋ฅ์ 30%๊ฐ ์๋ฃ๋์ด ์๊ณ ํ๋ฃจ์ 30%์ฉ ์์ ์ด ๊ฐ๋ฅํ๋ฏ๋ก 3์ผ๊ฐ ์์ ํ ๋ฐฐํฌ๊ฐ ๊ฐ๋ฅํฉ๋๋ค. ํ์ง๋ง ์ด์ ์ฒซ ๋ฒ์งธ ๊ธฐ๋ฅ์ด ์์ง ์์ฑ๋ ์ํ๊ฐ ์๋๊ธฐ ๋๋ฌธ์ ์ฒซ ๋ฒ์งธ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๋๋ 7์ผ์งธ ๋ฐฐํฌ๋ฉ๋๋ค.
์ธ ๋ฒ์งธ ๊ธฐ๋ฅ์ 55%๊ฐ ์๋ฃ๋์ด ์๊ณ ํ๋ฃจ์ 5%์ฉ ์์ ์ด ๊ฐ๋ฅํ๋ฏ๋ก 9์ผ๊ฐ ์์ ํ ๋ฐฐํฌ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.๋ฐ๋ผ์ 7์ผ์งธ์ 2๊ฐ์ ๊ธฐ๋ฅ, 9์ผ์งธ์ 1๊ฐ์ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๋ฉ๋๋ค.
โป ๊ณต์ง - 2020๋ 7์ 14์ผ ํ ์คํธ์ผ์ด์ค๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
'Algorithm > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ตฌ๋ช ๋ณดํธ /ํ์ด์ฌ /python /ํ์๋ฒ (2) | 2020.08.14 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] H-Index /ํ์ด์ฌ /Python /์ ๋ ฌ (0) | 2020.08.13 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์ ํ๋ฒํธ ๋ชฉ๋ก /ํ์ด์ฌ /python /ํด์ (0) | 2020.08.11 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์ฃผ์๊ฐ๊ฒฉ /ํ์ด์ฌ /Python /์คํ (1) | 2020.08.10 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ฅ /ํ์ด์ฌ /Python /ํด์ (0) | 2020.08.09 |