๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ“ ์•Œ๊ณ ๋ฆฌ์ฆ˜217

[์ฝ”๋“œํŠธ๋ฆฌ] ์™„์ „ํƒ์ƒ‰ / ์ž๋ฆฌ ์ˆ˜ ๋‹จ์œ„๋กœ ์™„ํƒ ์—ฐ์Šต๋ฌธ์ œ 5๊ฐœ์˜ ์ˆซ์ž [1, 5, 2, 6, 8]์ด ์ฃผ์–ด์กŒ์„ ๋•Œ ์ด ์ค‘ ๋‹จ ํ•˜๋‚˜์˜ ์ˆซ์ž๋งŒ ๋‘ ๋ฐฐ๋กœ ํ•ด์„œ, ์ธ์ ‘ํ•œ ์ˆซ์ž๊ฐ„์˜ ์ฐจ์ด์˜ ํ•ฉ์ด ์ตœ๋Œ€๊ฐ€ ๋˜๋„๋ก ํ•ด๋ณด์„ธ์š”. ์œ„ ๋ฌธ์ œ๋Š” ๋‹จ์ˆœํ•˜๊ฒŒ, ๋ชจ๋“  ์œ„์น˜์˜ ์ˆซ์ž๋ฅผ 2๋ฐฐ์”ฉ ํ•ด๋ณด๋Š” ์™„์ „ํƒ์ƒ‰์„ ์ง„ํ–‰ํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 1. ์ฒซ ๋ฒˆ์งธ ์ˆซ์ž 1์— 2๋ฐฐ๋ฅผ ํ•˜๋Š” ๊ฒฝ์šฐ [2, 5, 2, 6, 8]์ด ๋˜๋ฏ€๋กœ, ์ธ์ ‘ํ•œ ์ˆซ์ž๊ฐ„์˜ ์ฐจ์ด์˜ ํ•ฉ์€ 3 + 3 + 4 + 2 = 12๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. 2. ๋‘ ๋ฒˆ์งธ ์ˆซ์ž 5์— 2๋ฐฐ๋ฅผ ํ•˜๋Š” ๊ฒฝ์šฐ [1, 10, 2, 6, 8]์ด ๋‚จ๊ฒŒ ๋˜๋ฏ€๋กœ, ์ธ์ ‘ํ•œ ์ˆซ์ž๊ฐ„์˜ ์ฐจ์ด์˜ ํ•ฉ์€ 9 + 8 + 4 + 2 = 23์ด ๋ฉ๋‹ˆ๋‹ค. 3. ์„ธ ๋ฒˆ์งธ ์ˆซ์ž 2์— 2๋ฐฐ๋ฅผ ํ•˜๋Š” ๊ฒฝ์šฐ [1, 5, 4, 6, 8]์ด ๋‚จ๊ฒŒ ๋˜๋ฏ€๋กœ, ์ธ์ ‘ํ•œ ์ˆซ์ž๊ฐ„์˜ ์ฐจ์ด์˜ ํ•ฉ์€ 4 + 1 + 2 + 2 = 9๊ฐ€ ๋ฉ.. 2023. 2. 22.
[์ฝ”๋“œํŠธ๋ฆฌ] Greedy - ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜ / ๋™์ „ ์—ฐ์Šต๋ฌธ์ œ 1, 4, 5 ๋™์ „์„ ์ด์šฉํ•˜์—ฌ 8์›์„ ๊ฑฐ์Šฌ๋Ÿฌ์ฃผ๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์ตœ์†Œ ๋™์ „์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•ด๋ณด์„ธ์š”. ์œ„ ๋ฌธ์ œ๋ฅผ ๋ณด๋ฉด ๋‹น์—ฐํžˆ ํฐ ๋™์ „๋ถ€ํ„ฐ ์“ฐ๋Š” ๊ฒƒ์ด ์ข‹์•„ ๋ณด์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํฐ ๋™์ „๋ถ€ํ„ฐ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด 5 + 1 + 1 + 1์ด๋ฏ€๋กœ 4๊ฐœ์˜ ๋™์ „์ด ํ•„์š”ํ•˜์ง€๋งŒ, 4 + 4 ์—ญ์‹œ 8 ์ด๋ฏ€๋กœ ์ตœ์†Œ ๋™์ „์˜ ์ˆ˜๋Š” 2๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๋‹ค์Œ ๊ฒฝ์šฐ๋Š” ์–ด๋–จ๊นŒ์š”? 1, 5, 10, 20 ๋™์ „์„ ์ด์šฉํ•˜์—ฌ 78์›์„ ๊ฑฐ์Šฌ๋Ÿฌ์ฃผ๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์ตœ์†Œ ๋™์ „์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•ด๋ณด์„ธ์š”. ์ด ๊ฒฝ์šฐ์—๋Š” ํฐ ๋™์ „๋ถ€ํ„ฐ ๊ฑฐ์Šฌ๋Ÿฌ์ฃผ๋Š” ๊ฒƒ์ด ํ•ญ์ƒ ์ข‹์Šต๋‹ˆ๋‹ค. ๊ทธ ์ด์œ ๋Š” ์ฃผ์–ด์ง„ ๋™์ „๋“ค์ด ์ „๋ถ€ ๋ฐฐ์ˆ˜๊ด€๊ณ„์— ๋†“์—ฌ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ์— ํฐ ๋™์ „์ด ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด, ์ž‘์€ ๋™์ „์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ํ•ญ์ƒ ์ข‹์€ ์„ ํƒ์ด ๋˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ฐฐ์ˆ˜ .. 2023. 2. 22.
[์ฝ”๋“œํŠธ๋ฆฌ] Backtracking - ๋ฐฑํŠธ๋ž˜ํ‚น / ์žฌ๊ท€ ์—ฐ์Šต๋ฌธ์ œ ๋ฐฑํŠธ๋ž˜ํ‚น. ๋Œ€์ถฉ ์•Œ๊ณ ์žˆ๋Š”๊ฑด ๋ฐฑํŠธ๋ž˜ํ‚น == ์™„์ „ํƒ์ƒ‰(๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋ฌด์‹ํ•˜๊ฒŒ ์ฐพ๊ธฐ)์—์„œ ๊ฐ€์ง€์น˜๊ธฐ๋กœ ํšจ์œจ ๋†’์ž„ ์ด์ •๋„๋ผ์„œ..ใ…‹ใ…‹ ์—ฐ์Šต๋ฌธ์ œ๋„ ํ’€์–ด๋ด์•ผ๊ฒ ๋‹ค ๋Œ€๋ถ€๋ถ„์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋“ค์€ ์›ํ•˜๋Š” ๋ชจ๋“  ์กฐํ•ฉ์„ ๋งŒ๋“ค์–ด ๊ทธ ์ค‘ ๋ฌธ์ œ์—์„œ ์›ํ•˜๋Š” ๋‹ต์„ ๊ณ ๋ฅด๋Š” ์‹์œผ๋กœ ํ•ด๊ฒฐ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ n ์ œํ•œ์ด ์ž‘๊ณ , ๋ชจ๋“  ์กฐํ•ฉ์„ ๋งŒ๋“œ๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์ด ๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ์ œํ•œ ์‹œ๊ฐ„๋ณด๋‹ค ๋” ์ž‘๋‹ค๋ฉด, ํ•ญ์ƒ ๋ชจ๋“  ์กฐํ•ฉ์„ ๋‹ค ๋งŒ๋“ค์–ด ๋ณด๋Š” ๊ฒƒ์ด ๊ฐ€๋…์„ฑ ์ธก๋ฉด์—์„œ๋‚˜, ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ์ž…์žฅ์—์„œ ๊ฐ€์žฅ ์ข‹๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค๋งŒ, (1, 1, 1, 1, 1), (1, 1, 1, 1, 2), (1, 1, 1, 1, 3), (1, 1, 1, 2, 1), (1, 1, 1, 2, 2), .. ๋“ฑ ์—ฌ๋Ÿฌ ๊ฐ€๋Šฅํ•œ ์ˆœ์—ด๊ณผ ์กฐํ•ฉ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ for๋ฌธ ๋งŒ์„ .. 2023. 2. 21.
[C++/๋ฐฑ์ค€] 11052 : ์นด๋“œ ๊ตฌ๋งคํ•˜๊ธฐ ๋ฌธ์ œ ์š”์ฆ˜ ๋ฏผ๊ทœ๋„ค ๋™๋„ค์—์„œ๋Š” ์Šคํƒ€ํŠธ๋งํฌ์—์„œ ๋งŒ๋“  PS์นด๋“œ๋ฅผ ๋ชจ์œผ๋Š” ๊ฒƒ์ด ์œ ํ–‰์ด๋‹ค. PS์นด๋“œ๋Š” PS(Problem Solving)๋ถ„์•ผ์—์„œ ์œ ๋ช…ํ•œ ์‚ฌ๋žŒ๋“ค์˜ ์•„์ด๋””์™€ ์–ผ๊ตด์ด ์ ํ˜€์žˆ๋Š” ์นด๋“œ์ด๋‹ค. ๊ฐ๊ฐ์˜ ์นด๋“œ์—๋Š” ๋“ฑ๊ธ‰์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ƒ‰์ด ์น ํ•ด์ ธ ์žˆ๊ณ , ๋‹ค์Œ๊ณผ ๊ฐ™์ด 8๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. (์นด๋“œ ์ข…๋ฅ˜๋Š” ์ƒ๋žต) ์นด๋“œ๋Š” ์นด๋“œํŒฉ์˜ ํ˜•ํƒœ๋กœ๋งŒ ๊ตฌ๋งคํ•  ์ˆ˜ ์žˆ๊ณ , ์นด๋“œํŒฉ์˜ ์ข…๋ฅ˜๋Š” ์นด๋“œ 1๊ฐœ๊ฐ€ ํฌํ•จ๋œ ์นด๋“œํŒฉ, ์นด๋“œ 2๊ฐœ๊ฐ€ ํฌํ•จ๋œ ์นด๋“œํŒฉ, ... ์นด๋“œ N๊ฐœ๊ฐ€ ํฌํ•จ๋œ ์นด๋“œํŒฉ๊ณผ ๊ฐ™์ด ์ด N๊ฐ€์ง€๊ฐ€ ์กด์žฌํ•œ๋‹ค. ๋ฏผ๊ทœ๋Š” ์นด๋“œ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ ์€ ํŒฉ์ด๋”๋ผ๋„ ๊ฐ€๊ฒฉ์ด ๋น„์‹ธ๋ฉด ๋†’์€ ๋“ฑ๊ธ‰์˜ ์นด๋“œ๊ฐ€ ๋งŽ์ด ๋“ค์–ด์žˆ์„ ๊ฒƒ์ด๋ผ๋Š” ๋ฏธ์‹ ์„ ๋ฏฟ๊ณ  ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ, ๋ฏผ๊ทœ๋Š” ๋ˆ์„ ์ตœ๋Œ€ํ•œ ๋งŽ์ด ์ง€๋ถˆํ•ด์„œ ์นด๋“œ N๊ฐœ ๊ตฌ๋งคํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ์นด๋“œ๊ฐ€ i๊ฐœ ํฌํ•จ๋œ ์นด๋“œํŒฉ์˜ ๊ฐ€๊ฒฉ์€ Pi์›์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค.. 2023. 2. 21.
[C++/๋ฐฑ์ค€] 1260 : DFS์™€ BFS ๋ฌธ์ œ ๊ทธ๋ž˜ํ”„๋ฅผ DFS๋กœ ํƒ์ƒ‰ํ•œ ๊ฒฐ๊ณผ์™€ BFS๋กœ ํƒ์ƒ‰ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ๋‹จ, ๋ฐฉ๋ฌธํ•  ์ˆ˜ ์žˆ๋Š” ์ •์ ์ด ์—ฌ๋Ÿฌ ๊ฐœ์ธ ๊ฒฝ์šฐ์—๋Š” ์ •์  ๋ฒˆํ˜ธ๊ฐ€ ์ž‘์€ ๊ฒƒ์„ ๋จผ์ € ๋ฐฉ๋ฌธํ•˜๊ณ , ๋” ์ด์ƒ ๋ฐฉ๋ฌธํ•  ์ˆ˜ ์žˆ๋Š” ์ ์ด ์—†๋Š” ๊ฒฝ์šฐ ์ข…๋ฃŒํ•œ๋‹ค. ์ •์  ๋ฒˆํ˜ธ๋Š” 1๋ฒˆ๋ถ€ํ„ฐ N๋ฒˆ๊นŒ์ง€์ด๋‹ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์ •์ ์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 1,000), ๊ฐ„์„ ์˜ ๊ฐœ์ˆ˜ M(1 ≤ M ≤ 10,000), ํƒ์ƒ‰์„ ์‹œ์ž‘ํ•  ์ •์ ์˜ ๋ฒˆํ˜ธ V๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ M๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ„์„ ์ด ์—ฐ๊ฒฐํ•˜๋Š” ๋‘ ์ •์ ์˜ ๋ฒˆํ˜ธ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์–ด๋–ค ๋‘ ์ •์  ์‚ฌ์ด์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ„์„ ์ด ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง€๋Š” ๊ฐ„์„ ์€ ์–‘๋ฐฉํ–ฅ์ด๋‹ค. ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— DFS๋ฅผ ์ˆ˜ํ–‰ํ•œ ๊ฒฐ๊ณผ๋ฅผ, ๊ทธ ๋‹ค์Œ ์ค„์—๋Š” BFS๋ฅผ ์ˆ˜ํ–‰ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. V๋ถ€ํ„ฐ ๋ฐฉ๋ฌธ๋œ ์ ์„ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค. .. 2023. 2. 21.
[C++/๋ฐฑ์ค€] 1149 : RGB ๊ฑฐ๋ฆฌ ๋ฌธ์ œ RGB๊ฑฐ๋ฆฌ์—๋Š” ์ง‘์ด N๊ฐœ ์žˆ๋‹ค. ๊ฑฐ๋ฆฌ๋Š” ์„ ๋ถ„์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๊ณ , 1๋ฒˆ ์ง‘๋ถ€ํ„ฐ N๋ฒˆ ์ง‘์ด ์ˆœ์„œ๋Œ€๋กœ ์žˆ๋‹ค. ์ง‘์€ ๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘ ์ค‘ ํ•˜๋‚˜์˜ ์ƒ‰์œผ๋กœ ์น ํ•ด์•ผ ํ•œ๋‹ค. ๊ฐ๊ฐ์˜ ์ง‘์„ ๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘์œผ๋กœ ์น ํ•˜๋Š” ๋น„์šฉ์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ์•„๋ž˜ ๊ทœ์น™์„ ๋งŒ์กฑํ•˜๋ฉด์„œ ๋ชจ๋“  ์ง‘์„ ์น ํ•˜๋Š” ๋น„์šฉ์˜ ์ตœ์†Ÿ๊ฐ’์„ ๊ตฌํ•ด๋ณด์ž. 1๋ฒˆ ์ง‘์˜ ์ƒ‰์€ 2๋ฒˆ ์ง‘์˜ ์ƒ‰๊ณผ ๊ฐ™์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค. N๋ฒˆ ์ง‘์˜ ์ƒ‰์€ N-1๋ฒˆ ์ง‘์˜ ์ƒ‰๊ณผ ๊ฐ™์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค. i(2 ≤ i ≤ N-1)๋ฒˆ ์ง‘์˜ ์ƒ‰์€ i-1๋ฒˆ, i+1๋ฒˆ ์ง‘์˜ ์ƒ‰๊ณผ ๊ฐ™์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์ง‘์˜ ์ˆ˜ N(2 ≤ N ≤ 1,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ ์ง‘์„ ๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘์œผ๋กœ ์น ํ•˜๋Š” ๋น„์šฉ์ด 1๋ฒˆ ์ง‘๋ถ€ํ„ฐ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ฃผ์–ด์ง„๋‹ค. ์ง‘์„ ์น ํ•˜๋Š” ๋น„์šฉ์€ 1,000๋ณด๋‹ค .. 2023. 2. 21.
728x90
๋ฐ˜์‘ํ˜•