ํฐ์คํ ๋ฆฌ ๋ทฐ
ํ๋ก๊ทธ๋๋จธ์ค: ์ผ๊ทผ ์ง์
dirmathfl 2020. 11. 2. 17:15๋ฌธ์
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ผ๊ทผ ์ง์
ํ์ฌ์ Demi๋ ๊ฐ๋์ ์ผ๊ทผ์ ํ๋๋ฐ์, ์ผ๊ทผ์ ํ๋ฉด ์ผ๊ทผ ํผ๋ก๋๊ฐ ์์ ๋๋ค. ์ผ๊ทผ ํผ๋ก๋๋ ์ผ๊ทผ์ ์์ํ ์์ ์์ ๋จ์ ์ผ์ ์์ ๋์ ์ ๊ณฑํ์ฌ ๋ํ ๊ฐ์ ๋๋ค. Demi๋ N์๊ฐ ๋์ ์ผ๊ทผ ํผ๋ก๋
programmers.co.kr
๋ฌธ์ ํ์ด
๋จ์ ์ผ์ ์์
๋์ด ์์ ๋, ์ผ๊ทผ ์ง์๋ฅผ ์ต์ํํ์ฌ ๋ฐํํ๋ ๋ฌธ์ ์ด๋ค. ์ผ์ ์์
๋์ด ์๊ณ , ์ผ์ ํ ์ ์๋ ์๊ฐ์ด ์๋ค๋ฉด ์์
๋์ด ๊ฐ์ฅ ํฐ ์์
๋ถํฐ ์ฒ๋ฆฌํ์ฌ์ผ ํ๋ค. ์ผ๊ทผ ์ง์๋ ์์
๋์ ์ ๊ณฑ
์ด๊ธฐ ๋๋ฌธ์ด๋ค.
๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด์๋ Python
์ ๊ฒฝ์ฐ heapq
๋ฅผ ์ฌ์ฉํ์ฌ ํ์ด์ผ ํ๋ค. heapq
๋ ์ต์ ํ์ด๊ธฐ ๋๋ฌธ์ ์ต๋ ํ์ ๋ง๋ค๊ธฐ ์ํด์๋ ์์ ๊ฐ์ผ๋ก ๋ณํํ์ฌ์ผ ํ๋ค. (์ด๋ works๊ฐ 1 ์ด์ ์ด๊ธฐ์ ๊ฐ๋ฅํ๋ค.)
์ฝ๋
from heapq import heapify, heappush, heappop
def solution(n, works):
answer = 0
works = [-work for work in works]
heapify(works)
while n:
max_time = -heappop(works)
if not max_time:
break
heappush(works, -(max_time - 1))
n -= 1
return sum(work ** 2 for work in works)
'๐จโ๐ป ์ฝ๋ฉํ ์คํธ > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค: ์ง๊ฒ๋ค๋ฆฌ (0) | 2020.11.04 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค: ๊ฐ์ฅ ๊ธด ํฐ๋ฆฐ๋๋กฌ (0) | 2020.11.03 |
ํ๋ก๊ทธ๋๋จธ์ค: ์ซ์ ๊ฒ์ (0) | 2020.11.02 |
ํ๋ก๊ทธ๋๋จธ์ค: ๋ฐฐ๋ฌ (0) | 2020.11.01 |
ํ๋ก๊ทธ๋๋จธ์ค: N-Queen (0) | 2020.10.29 |