ํž™ 3

๐Ÿ“š [CS๋ฉด์ ‘] ์›น ๋ฉด์ ‘ ์งˆ๋ฌธ [ 3์›” 2์ฃผ์ฐจ ]

3์›” 2์ฃผ์ฐจ ๋‚ด์šฉ ์ •๋ฆฌ [3/11 ~ 3/15] ์‚ฌ์‹ค ์ด๋ฒˆ์ฃผ์—๋Š” ์ฝ”ํ…Œ, ์ž์†Œ์„œ, ๋ฉด์ ‘ ์ค€๋น„๋ฅผ ํ•˜๋Š๋ผ ๋งŽ์€ ๊ธ€์„ ์ž‘์„ฑํ•˜์ง€๋Š” ๋ชปํ–ˆ๋‹ค. ์ด๋ฒˆ์ฃผ์—๋Š” ์šด์˜์ฒด์ œ, ์ž๋ฃŒ๊ตฌ์กฐ, ์•Œ๊ณ ๋ฆฌ์ฆ˜, ๋„คํŠธ์›Œํฌ์— ๋Œ€ํ•ด ์ •๋ฆฌํ•ด๋ดค๋‹ค. ์ด์ œ ๊ธฐ๋ณธ์ ์ธ CS๋“ค์€ ๋ฉด์ ‘์—์„œ ๊ฑฐ์˜ ํ•˜์ง€ ์•Š๋Š” ๋ถ„์œ„๊ธฐ์ด๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Ÿฐ ์ง€์‹์ด ๋ถ€์กฑํ•˜๋‹ค๋ฉด ๊ฐœ๋ฐœ์ž๋กœ์„œ ์–ด๋ ค์›€์ด ๋งŽ์€ ๊ฒƒ์„ ๋ช…ํ™•ํ•˜๋‹ค. ์ด ์ง€์‹๋“ค์„ ์ž์‹ ์˜ ํ”„๋กœ์ ํŠธ์—์„œ ์–ด๋–ป๊ฒŒ ํ™œ์šฉํ•˜์˜€๋Š”์ง€ ์—ฐ๊ด€์ง€์œผ๋ฉด ์ตœ๊ณ ์˜ ๋ฉด์ ‘์ด ๋  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ“š [CS๋ฉด์ ‘] ์›น ๋ฉด์ ‘ ์งˆ๋ฌธ [10] [์ž๋ฃŒ๊ตฌ์กฐ]

1. ์ž๋ฃŒ๊ตฌ์กฐ๋ž€ ? ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ๋“ค์˜ ๋ฌถ์Œ์„ ์ €์žฅํ•˜๊ณ , ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ •์˜ํ•œ ๊ฒƒ 2. ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  ? 1. ๋ฐ์ดํ„ฐ๋ฅผ ์ฒด๊ณ„์ ์œผ๋กœ ์ €์žฅํ•˜๊ณ , ํšจ์œจ์ ์œผ๋กœ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. 2. ๋Œ€๋ถ€๋ถ„์˜ ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ํŠน์ • ์ƒํ™ฉ์— ๋†“์ธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ์— ํŠนํ™”๋˜์–ด ์žˆ๋‹ค. 3. ์ž๋ฃŒ๊ตฌ์กฐ์˜ ์ข…๋ฅ˜์™€ ๊ตฌ๋ถ„ ์„ ํ˜•๊ตฌ์กฐ - ๋ฐฐ์—ด(Array) - ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ(LinkedList) - ์Šคํƒ(Stack) - ํ(Queue) ๋น„์„ ํ˜•๊ตฌ์กฐ - ํŠธ๋ฆฌ(Tree) - ๊ทธ๋ž˜ํ”„(Graph) Stack, Queue, Tree, Graph๊ฐ€ ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค. ์Šคํƒ [Stack] LIFO(Last In First Out) ์ฆ‰, ์Šคํƒ์€ ๋งˆ์ง€๋ง‰์— ๋“ค์–ด์˜จ ๊ฒƒ์ด ๊ฐ€์žฅ ๋จผ์ €๋‚˜๊ฐ€๋Š” ํ›„์ž…์„ ์ถœ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค. ..

๐ŸŸฉ [๋ฐฑ์ค€] [Python] [Silver3] 15903๋ฒˆ_์นด๋“œ ํ•ฉ์ฒด ๋†€์ด

๋ฌธ์ œ https://www.acmicpc.net/problem/15903 15903๋ฒˆ: ์นด๋“œ ํ•ฉ์ฒด ๋†€์ด ์ฒซ ๋ฒˆ์งธ ์ค„์— ์นด๋“œ์˜ ๊ฐœ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ˆ˜ n(2 ≤ n ≤ 1,000)๊ณผ ์นด๋“œ ํ•ฉ์ฒด๋ฅผ ๋ช‡ ๋ฒˆ ํ•˜๋Š”์ง€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ˆ˜ m(0 ≤ m ≤ 15×n)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘ ๋ฒˆ์งธ ์ค„์— ๋งจ ์ฒ˜์Œ ์นด๋“œ์˜ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” n๊ฐœ์˜ ์ž์—ฐ์ˆ˜ a1, www.acmicpc.net ํ’€์ด # ๋ฐฑ์ค€ 15903๋ฒˆ ๋ฌธ์ œ - ์นด๋“œ ํ•ฉ์ฒด ๋†€์ด import sys import heapq input = sys.stdin.readline n, m = map(int, input().split()) cards = list(map(int, input().split())) heapq.heapify(cards) for i in range(m): value ..