์•Œ๊ณ ๋ฆฌ์ฆ˜

๊ทธ๋ฆฌ๋””(Greedy)/ํƒ์š•์  ์•Œ๊ณ ๋ฆฌ์ฆ˜

alswlfl 2026. 4. 4. 20:29

๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜

ํ˜„์žฌ ์ƒํ™ฉ์—์„œ ๋‹น์žฅ ๊ฐ€์žฅ ์ข‹์•„๋ณด์ด๋Š” ์ƒํ™ฉ๋งŒ์„ ์„ ํƒํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜

  • ์ตœ์ ์˜ ํ•ด๋ฅผ ๊ตฌํ•˜๊ธฐ ์œ„ํ•œ ๊ทผ์‚ฌ์ ์ธ ๋ฐฉ๋ฒ•์œผ๋กœ ์‚ฌ์šฉ๋  ๋•Œ๊ฐ€ ๋งŽ์Œ → ์ตœ์ ์˜ ํ•ด์— ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ทผ์‚ฌ ํ•ด๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ์Œ

ex) ๋ฃจํŠธ์—์„œ ์ถœ๋ฐœํ•ด์„œ ๋‹จ๋ง ๋…ธ๋“œ๊นŒ์ง€ ๊ฐ€๋Š” ๊ฒฝ์šฐ, ๊ฑฐ์ณ๊ฐ€๋Š” ๋…ธ๋“œ์˜ ํ•ฉ์ด ๊ฐ€์žฅ ํฐ ๊ฒฝ์šฐ ๊ตฌํ•˜๊ธฐ

  1. ์™„์ „ํƒ์ƒ‰์œผ๋กœ ํ’€๊ธฐ
    • ์ตœ์ ์˜ ํ•ด: 10 (1→4→5)
    • ๋ชจ๋“  ์ƒํ™ฉ์„ ๊ณ ๋ คํ•ด์•ผ ํ•จ
  2. ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ํ’€๊ธฐ
    • ๋งค ์ƒํ™ฉ์—์„œ ๋‹จ์ˆœํžˆ ๊ฐ€์žฅ ํฐ ๋…ธ๋“œ๋ฅผ ์„ ํƒ: 8 (1→5→2)
    • ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ณ ๋ คํ•˜์ง€ ์•Š์•„๋„ ๋˜์ง€๋งŒ, ์ตœ์ ์˜ ํ•ด๋Š” ์•„๋‹ˆ๋‹ค!

[์ ‘๊ทผ ๋ฐฉ์‹]

1. ๋ฐฉ๋ฒ• ๊ณ ์•ˆํ•˜๊ธฐ: ํ˜„์žฌ ์ƒํ™ฉ์—์„œ ์–ด๋–ค ๊ฒƒ์„ ์„ ํƒํ• ์ง€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ณ ์•ˆ

2. ์ •๋‹น์„ฑ ํ™•์ธํ•˜๊ธฐ: ์ž์‹ ์ด ๊ณ ์•ˆํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ํ•ญ์ƒ ์ตœ์ ์˜ ํ•ด๋ฅผ ๋ณด์žฅํ•˜๋Š”์ง€ ํ™•์ธ(์ฆ๋ช… ๋‹จ๊ณ„)

 

ex) ๊ฑฐ์Šค๋ฆ„๋ˆ ๋ฌธ์ œ

์นด์šดํ„ฐ์— 500์›, 100์›, 50์›, 10์›์งœ๋ฆฌ ๋™์ „์ด ๋ฌด์ˆ˜ํžˆ ๋งŽ์ด ์กด์žฌํ•  ๋•Œ, ์†๋‹˜์—๊ฒŒ 6,480์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ์–ด์•ผํ•  ๋•Œ ๋™์ „ ๊ฐœ์ˆ˜์˜ ์ตœ์†Ÿ๊ฐ’์€?

 

ํ•ด๊ฒฐ๋ฐฉ๋ฒ•: ๊ฐ€์žฅ ํฐ ํ™”ํ ๋‹จ์œ„๋ถ€ํ„ฐ ๊ฑฐ์Šฌ๋Ÿฌ์ฃผ๊ธฐ → 500์›, 100์›, 50์›, 10์› ์ˆœ์œผ๋กœ ๊ฑฐ์Šฌ๋Ÿฌ์ฃผ๊ธฐ

 

1๋‹จ๊ณ„) 500์› ๊ฑฐ์Šฌ๋Ÿฌ์ฃผ๊ธฐ: 6480/500 = 12...480 → 12๊ฐœ

2๋‹จ๊ณ„) 100์› ๊ฑฐ์Šฌ๋Ÿฌ์ฃผ๊ธฐ: 480/100 = 4...80 → 4๊ฐœ

3๋‹จ๊ณ„) 50์› ๊ฑฐ์Šฌ๋Ÿฌ์ฃผ๊ธฐ: 80/50 = 1...30 → 1๊ฐœ

4๋‹จ๊ณ„) 10์› ๊ฑฐ์Šฌ๋Ÿฌ์ฃผ๊ธฐ: 30/10 = 3 → 3๊ฐœ

์ด 12+4+1+3 = 20๊ฐœ

๏นกํ™”ํ ๋‹จ์œ„๊ฐ€ ๋ฐฐ์ˆ˜ ๊ด€๊ณ„์— ์†ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•ด์„œ ์ตœ์ ์˜ ํ•ด๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Œ

 

๋งŒ์•ฝ, 120์›์„ ๊ฑฐ์Šฌ๋Ÿฌ ์ฃผ์–ด์•ผ ํ•  ๋•Œ 80์›, 60์›, 10์› ๋™์ „์ด ์žˆ๋Š” ๊ฒฝ์šฐ,

- ์ตœ์ ์˜ ํ•ด: 60์›*2 = 120์›์œผ๋กœ, 2๊ฐœ์˜ ๋™์ „ ํ•„์š”

- ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด๋กœ 80์›๋ถ€ํ„ฐ ๊ฑฐ์Šฌ๋Ÿฌ ์ค€๋‹ค๋ฉด ์ด 5๊ฐœ์˜ ๋™์ „ ํ•„์š”ํ•˜๋ฏ€๋กœ ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์ตœ์ ์˜ ํ•ด ์ฐพ์„ ์ˆ˜ ์—†์Œ