Greedy Basic
ย - Last update: 2023-11-18

Greedy ๊ธฐ๋ณธ ์ด๋ก  ์ •๋ฆฌ

์ˆ˜ํ•™ ์ฆ๋ช…์ด ์ฒจ๊ฐ€๋œ PS ์ด๋ก ์€ ๊ฐ€์ ค๋‹˜ ๋ธ”๋กœ๊ทธ์— ์ž˜ ์ •๋ฆฌ๋˜์–ด ์žˆ๋‹ค. ์•„๋ž˜ ๋งํฌ์—์„œ ์ •๋ฆฌํ•œ ๊ธฐ๋ณธ ์ด๋ก ์ด๋‹ค.

๊ธฐ๋ณธ ์›์น™

Greedy stays ahead

  • ํƒ์š•์Šค๋Ÿฌ์šด ๊ฒƒ์ด ํ•ญ์ƒ ์•ž์„ ๋‹ค.
  • ๋งค๋ฒˆ ํƒ์š• ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์ƒ์˜ ์ตœ์  ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์„ ํƒํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ํ•ญ์ƒ ์ข‹๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์ž„์œผ๋กœ์จ ์ฆ๋ช…ํ•˜๋Š” ๊ธฐ๋ฒ•

Certificate argument

  • ์ฆ๊ฑฐ ๋…ผ์˜
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋‹ต์„ ์ถœ๋ ฅํ•  ๋•Œ, ๊ทธ ๋‹ต์ด ์‹ค์ œ๋กœ ์ตœ์ ํ•ด๋ผ๋Š” ์ฆ๊ฑฐ๋ฅผ ํ•จ๊ป˜ ์ œ์ถœํ•˜๋Š” ๊ธฐ๋ฒ•

Exchange argument

  • ๊ตํ™˜ ๋…ผ์˜
  • ์ตœ์ ํ•ด๋ฅผ ์กฐ๊ธˆ์”ฉ ๋ฐ”๊พธ์–ด ํƒ์š• ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๋‹ต๊ณผ ๋™์ผํ•˜๊ฒŒ ๋งŒ๋“ค๋˜, ๋งค๋ฒˆ ๋‚˜๋น ์ง€์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์ž„์œผ๋กœ์จ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๋‹ต์ด ์ตœ์ ํ•ด๋ผ๋Š” ๊ฒƒ์„ ์ฆ๋ช…ํ•˜๋Š” ๋ฐฉ๋ฒ•

๊ทธ๋ฆฌ๋”” & DP & ์™„์ „ ํƒ์ƒ‰์˜ ๊ตฌ๋ณ„๋ฒ•

์–ด๋”˜๊ฐ€(ํ”ผ๊ฐค) ์—์„œ ์„ค๋ช…ํ•ด์ค€ ๊ฐœ๋…์  ์ดํ•ด๊ฐ€ ๋„ˆ๋ฌด ์ข‹์•„์„œ ์•„๋ž˜์— ์‚ด์ง ๋ณ€ํ˜•ํ•ด์„œ ์ธ์šฉํ•ด๋ณธ๋‹ค.

์–ด๋–ค ์ƒํƒœ S๊ฐ€ ์žˆ๊ณ , ๊ทธ ์ƒํƒœ S์— ๋Œ€ํ•ด ํ’€๊ณ ์ž ํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ f๋ผ๊ณ  ํ•ด๋ณด์ž.

  • S: input
  • f(S): output
  1. f(S)๋ผ๋Š” ๊ฐ’์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด ํ™•์ธํ•ด์•ผํ•˜๋Š” ๋ชจ๋“  ์ค‘๊ฐ„ ์ƒํƒœ๋ฅผ ๋‚˜์—ดํ•˜๊ณ  ๊ทธ๊ฑธ ๋‹ค ํ™•์ธํ•ด์„œ f(S)๋ฅผ ๊ตฌํ•˜๋Š”๊ฒŒ brute-force
  2. ๊ตฌํ•˜๋Š” ๊ณผ์ •์—์„œ ๊ฐ™์€ ์ค‘๊ฐ„ ์ƒํƒœ๋ฅผ ํ™•์ธํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๊ณ  ๊ทธ ๊ฐ€์ง“์ˆ˜๊ฐ€ ๊ทธ๋ ‡๊ฒŒ ํฌ์ง€ ์•Š๋‹ค๋Š”๊ฑธ ์ด์šฉํ•ด์„œ ์ค‘๋ณต์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์ค‘๊ฐ„ ์ƒํƒœ๋“ค์€ ์ €์žฅ(๋ฉ”๋ชจ์ด์ œ์ด์…˜)ํ•ด์„œ ์ตœ์ ํ™”ํ•˜๋Š”๊ฒŒ DP
  3. f(S)๋ฅผ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด ์•Œ์•„์•ผํ•˜๋Š” ์ƒํƒœ๋“ค ์ค‘์— ๋ช‡ ๊ฐ€์ง€๋งŒ ๋ด๋„ ๋˜๋Š”๋ฐ? ๋ผ๋Š”๊ฑธ ์ฆ๋ช…ํ•˜๊ณ  ์ผ๋ถ€๋งŒ ๋ณด๋Š”๊ฒŒ ๊ทธ๋ฆฌ๋””

์ฆ‰, ์–ด๋–ป๊ฒŒ ๋ณด๋ฉด ๊ทธ๋ฆฌ๋””๋Š” ๋ํŒ์™•์ด๋‹ค. ๋‹ค์ต์ŠคํŠธ๋ผ์™€ ๊ฐ™์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด DP + Greedy๋ผ๊ณ  ํ•˜๋Š”๋ฐ, ์ด์   ์ข€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ๋‹ค.