hugDog
Android DevLog
hugDog
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๐Ÿ™Œ Hello? (162)
    • ๐Ÿงฉ์•ˆ๋“œ๋กœ์ด๋“œ (12)
      • ๊ฐœ๋… ์ •๋ฆฌ (5)
      • ๋ฒ„๊ทธ ํ•ด๊ฒฐ (4)
      • ๊ธฐํƒ€ (3)
    • ๐Ÿ”์•Œ๊ณ ๋ฆฌ์ฆ˜ (54)
      • ๊ฐœ๋… (0)
      • ๋ฐฑ์ค€ (48)
      • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค (6)
    • ๐Ÿ“„๊ฐœ๋ฐœ ์ผ์ง€ (0)
      • FINPO (0)
    • ๐Ÿ”คํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด (71)
      • C++ ์ •๋ฆฌ (49)
      • C++๊ธฐ์ดˆํ”Œ๋Ÿฌ์Šค ์—ฐ์Šต๋ฌธ์ œ (20)
      • Kotlin (2)
    • โญProject (1)
    • ๐ŸšดTIL (13)
      • Clean Code (13)
    • ๐Ÿšฉ๊ธฐํƒ€ (9)
      • ๋ชฉํ‘œ (6)
      • ์ผ์ƒ (3)
      • ๋ฌธ์„œ (0)

์ธ๊ธฐ ๊ธ€

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
hugDog

Android DevLog

[Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 1202๋ฒˆ: ๋ณด์„ ๋„๋‘‘
๐Ÿ”์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฐฑ์ค€

[Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 1202๋ฒˆ: ๋ณด์„ ๋„๋‘‘

2022. 2. 14. 17:59
728x90

๋ฌธ์ œ

 

ํ’€์ด

๊ฐ€๋ฐฉ๊ณผ ๋ณด์„์„ ์ •๋ ฌํ•œ ํ›„, ๊ฐ ๊ฐ€๋ฐฉ์— ๋„ฃ์„ ์ˆ˜ ์žˆ๋Š” ๋ณด์„ ๊ฐ€๊ฒฉ์˜ ์ตœ๋Œ€ ๊ฐ’์„ ๊ตฌํ•œ๋‹ค.

 

1. ์ดˆ๊ธฐ ๊ฐ’

๋ณด์„

๋ฌด๊ฒŒ 1 2 5
๊ฐ€๊ฒฉ 65 99 23

๊ฐ€๋ฐฉ

๋ฌด๊ฒŒ 2 10
์†Œ์œ ํ•œ ๋ณด์„์˜ ๊ฐ€๊ฒฉ 0 0

 

2. ์ฒซ ๋ฒˆ์งธ ๊ฐ€๋ฐฉ(2)์— ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ณด์„์„ ์šฐ์„ ์ˆœ์œ„ ํ์— ์ €์žฅ

๋ณด์„

๋ฌด๊ฒŒ 5  
๊ฐ€๊ฒฉ 23  

(๋ฐฐ์—ด ๋ณด์„์—์„œ ๋ฌด๊ฒŒ๊ฐ€ 1, 2์ธ ๊ฐ’์„ ๋นผ๋‚ด์–ด ์šฐ์„ ์ˆœ์œ„ ํ์— ์ €์žฅํ•จ)

 

์šฐ์„ ์ˆœ์œ„ ํ (๊ธฐ์ค€ : ๊ฐ€๊ฒฉ)

๋ฌด๊ฒŒ 2 1
๊ฐ€๊ฒฉ 99 65

(์ฒซ ๋ฒˆ์งธ ๊ฐ€๋ฐฉ์˜ ๋ฌด๊ฒŒ๋Š” 2์ด๊ณ , 2๋ณด๋‹ค ์ž‘์€ ๋ณด์„๋“ค์„ ์šฐ์„ ์ˆœ์œ„ ํ์— ๋„ฃ์Œ)

 

๊ฐ€๋ฐฉ

๋ฌด๊ฒŒ 2 10
์†Œ์œ ํ•œ ๋ณด์„์˜ ๊ฐ€๊ฒฉ 99 0

(๊ฐ€์žฅ ํฐ ๊ฐ’์ธ 99๋ฅผ ๊ฐ€๋ฐฉ(2)์— ์ถ”๊ฐ€)

 

์šฐ์„ ์ˆœ์œ„ ํ (๊ธฐ์ค€ : ๊ฐ€๊ฒฉ), ์ฒซ ๋ฒˆ์žฌ ๊ฐ€๋ฐฉ์— ๊ฐ€๊ฒฉ์ด 99์ธ ๋ณด์„์„ ๋„ฃ์–ด์คฌ์œผ๋ฏ€๋กœ pop

๋ฌด๊ฒŒ 1  
๊ฐ€๊ฒฉ 65  

 

3. ๋‚จ์€ ๋ณด์„ ๋ฆฌ์ŠคํŠธ์—์„œ ๊ฐ€๋ฐฉ(10)์— ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ณด์„์„ ๋นผ๋‚ด์–ด ์šฐ์„ ์ˆœ์œ„ ํ์— ์ €์žฅ

๋ณด์„

๋ฌด๊ฒŒ    
๊ฐ€๊ฒฉ    

 

์šฐ์„ ์ˆœ์œ„ ํ

๋ฌด๊ฒŒ 1 5
๊ฐ€๊ฒฉ 65 23

 

๊ฐ€๋ฐฉ

๋ฌด๊ฒŒ 2 10
์†Œ์œ ํ•œ ๋ณด์„์˜ ๊ฐ€๊ฒฉ 99 65

 

์ž์„ธํ•œ ๊ฑด ์ฝ”๋“œ ์ฐธ๊ณ 

์ฝ”๋“œ

import sys, heapq
input = sys.stdin.readline

n, k = map(int, input().split())
jewelry = [list(map(int, input().split())) for _ in range(n)]
bags = [int(input()) for _ in range(k)]
jewelry.sort()
bags.sort()
tmp = []
result = 0
for bag in bags:
    while jewelry and bag >= jewelry[0][0]:
        heapq.heappush(tmp, -jewelry[0][1])
        heapq.heappop(jewelry)
    
    if tmp:
        result += heapq.heappop(tmp)
    elif not jewelry:
        break

print(-result)

 

๋งˆ๋ฌด๋ฆฌ

3์‹œ๊ฐ„ ๊ฐ€๋Ÿ‰ ๊ณ ๋ฏผํ–ˆ์ง€๋งŒ ๋‹ต์ด ๋‚˜์˜ค์ง€ ์•Š์•„ ๊ตฌ๊ธ€๋ง ํ–ˆ๋‹ค...

 

728x90
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ (์ƒˆ์ฐฝ์—ด๋ฆผ)
    '๐Ÿ”์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฐฑ์ค€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 1644๋ฒˆ: ์†Œ์ˆ˜์˜ ์—ฐ์†ํ•ฉ
    • [Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 1781๋ฒˆ: ์ปต๋ผ๋ฉด
    • [Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 1208๋ฒˆ: ๋ถ€๋ถ„์ˆ˜์—ด์˜ ํ•ฉ 2
    • [Python/ํŒŒ์ด์ฌ] ๋ฐฑ์ค€ 15732๋ฒˆ: ๋„ํ† ๋ฆฌ ์ˆจ๊ธฐ๊ธฐ
    hugDog
    hugDog
    ์•ˆ๋“œ๋กœ์ด๋“œ ๊ณต๋ถ€ ์ค‘์ธ ํ•™์ƒ์ž…๋‹ˆ๋‹ค!

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”