[c++] BOJ 1149 :: RGB๊ฑฐ๋ฆฌ
Algorithm ๋ฌธ์ œ/BOJ 2021. 3. 12. 10:43

๋‚œ์ด๋„ : ์‹ค๋ฒ„ 1 ๊ฑธ๋ฆฐ ์‹œ๊ฐ„ : 30๋ถ„ ๋ฌธ์ œ 1149. RGB ๊ฑฐ๋ฆฌ ํ’€์ด ์ตœ์ข…์ ์œผ๋กœ ๊ตฌํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฒƒ : ์–‘์ชฝ๊ณผ ์ƒ‰์ด ๊ฐ™์ง€ ์•Š์€ ์ง‘์œผ๋กœ ๋ชจ๋“  ์ง‘์„ ์น ํ•˜๋Š” ๋น„์šฉ์˜ ์ตœ์†Œ๊ฐ’ ๋ถ€๋ถ„ ๋ฌธ์ œ : ํ˜„์žฌ ์ง‘์—์„œ ๋น„์šฉ์˜ ์ตœ์†Œ๊ฐ’ ์žฌ๊ท€ (์ง‘์˜ index, ์ง‘์˜ ์ƒ‰๊น”) => ๋น„์šฉ์˜ ์ตœ์†Œ๊ฐ’ ํ˜„์žฌ ์ง‘์„ ์น ํ•˜๋Š” ๋ฐ์— ๋“œ๋Š” ๋น„์šฉ์˜ ์ตœ์†Œ = 3๊ฐ€์ง€ ์ƒ‰ ์ค‘์˜ ์ตœ์†Œ = ์ง€๊ธˆ์˜ ๊ฐ’ + ์˜ค๋ฅธ์ชฝ ์ง‘์˜ ์ตœ์†Œ๊ฐ’ ์กฐ๊ฑด ์˜ค๋ฅธ์ชฝ ์ง‘์€ ์ƒ‰์ด ๊ฒน์น˜์ง€ ์•Š์•„์•ผํ•จ for๋ฌธ์—์„œ ์ƒ‰์ด ๊ฒน์น˜๋ฉด continue ๋งˆ์ง€๋ง‰ ์ง‘์€ ์˜ค๋ฅธ์ชฝ ์ง‘์ด ์—†์œผ๋ฏ€๋กœ ๊ฐ€๊ฒฉ์ด ๊ทธ ์ž์ฒด๋กœ ์ตœ์†Œ๊ฐ’ memo์— ๋ฏธ๋ฆฌ ์ €์žฅํ•ด๋‘๋Š” ๊ฒƒ์œผ๋กœ ํ•ด๊ฒฐ DP ์‚ฌ์šฉ ๊ฒน์น˜๋Š” ๋ถ€๋ถ„ : ํ˜„์žฌ ์ง‘์˜ ์ƒ‰์—์„œ ๋‚˜ํƒ€๋‚˜๋Š” ๋น„์šฉ์˜ ์ตœ์†Œ๊ฐ’ (index, color) => ์ตœ์†Œ ์ €์žฅ์€ R, G, B color ๊ฐ๊ฐ์„ ๋ชจ๋‘ ํ•ด์•ผํ•˜๋ฏ€๋กœ ..

[c++] BOJ 1520 :: ๋‚ด๋ฆฌ๋ง‰๊ธธ
Algorithm ๋ฌธ์ œ/BOJ 2021. 3. 12. 10:41

๋‚œ์ด๋„ : ๊ณจ๋“œ 4 ๊ฑธ๋ฆฐ ์‹œ๊ฐ„ : 1์‹œ๊ฐ„ ๋ฐ˜ ์ด์ƒ ๋ฌธ์ œ ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ ํ’€์ด ์šฐ์„  ์™„์ „ํƒ์ƒ‰์œผ๋กœ ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ์ƒ๊ฐํ•ด๋ณธ๋‹ค. ์™„์ „ํƒ์ƒ‰์œผ๋กœ ๊ตฌํ˜„ํ•œ๋‹ค๋ฉด dfs๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์žฌ๊ท€๋กœ ๊ตฌํ˜„ํ•  ๊ฒƒ์ด๋‹ค. ์žฌ๊ท€์˜ ๋งค๊ฐœ๋ณ€์ˆ˜(๋ฐ›๋Š” ์ •๋ณด)๋Š” ํ˜„์žฌ ์œ„์น˜์ผ ๊ฒƒ์ด๊ณ , ๋‚ด๋ณด๋‚ด๋Š” ์ •๋ณด๋Š” ํ˜„์žฌ ์œ„์น˜์—์„œ ๋งˆ์ง€๋ง‰๊นŒ์ง€์˜ ๊ฒฝ๋กœ์˜ ์ˆ˜์ผ ๊ฒƒ์ด๋‹ค. (0,0)์„ ์ฒ˜์Œ์œผ๋กœ ์žฌ๊ท€ํ•จ์ˆ˜์— ๋„˜๊ธฐ๋ฉด (0,0)์—์„œ ๋๊นŒ์ง€์˜ ๊ฒฝ๋กœ์˜ ์ˆ˜์ด๋ฏ€๋กœ ์šฐ๋ฆฌ๊ฐ€ ์›ํ•˜๋Š” ๋‹ต์ด ๋‚˜์˜จ๋‹ค. ์žฌ๊ท€๋Š” ์œ„, ์˜ค๋ฅธ์ชฝ, ์•„๋ž˜, ์™ผ์ชฝ์œผ๋กœ ์ ‘ํ•œ ๋ถ€๋ถ„์œผ๋กœ ์˜ฎ๊ฒจ๊ฐ€๋ฉฐ ํ•ด๋‹น ์žฅ์†Œ์˜ ๊ฒฝ๋กœ์˜ ์ˆ˜๋ฅผ ํ˜„์žฌ ์žฅ์†Œ์˜ ๊ฒฝ๋กœ์˜ ์ˆ˜์— ๋”ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰๋œ๋‹ค. ์ด ๋•Œ, ์žฅ์†Œ๋Š” ๋งต ์•ˆ์— ์žˆ์–ด์•ผํ•œ๋‹ค. ์ด ๋•Œ, ๋‚ด๋ฆฌ๋ง‰๊ธธ๋กœ๋งŒ ๊ฐˆ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ˜„์žฌ๋ณด๋‹ค ๋” ๋†’์€ ์ˆ˜๋ฅผ ๊ฐ€์ง„ ์žฅ์†Œ๋Š” ์ œ์™ธ์ด๋‹ค. ์ด๋ ‡๊ฒŒ ๊ตฌ์„ฑํ•˜๋ฉด ๊ฐ”๋˜ ๊ณณ์„ ๋˜ ๊ฐ€๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ƒ๊ธฐ..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์™ธ๋ฒฝ์ ๊ฒ€ :: ์žฌ๊ท€, ๋ฉ”๋ชจ์ด์ œ์ด์…˜, ์ฝ”๋“œ, ๊ฒฐ๊ณผ
Algorithm ๋ฌธ์ œ/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 2021. 1. 11. 18:02

์™ธ๋ฒฝ ์ ๊ฒ€ ๋ฌธ์ œ https://programmers.co.kr/learn/courses/30/lessons/60062# ๋ฌธ์ œ ์„ค๋ช… ๋ ˆ์Šคํ† ๋ž‘์„ ์šด์˜ํ•˜๊ณ  ์žˆ๋Š” ์Šค์นดํ”ผ๋Š” ๋ ˆ์Šคํ† ๋ž‘ ๋‚ด๋ถ€๊ฐ€ ๋„ˆ๋ฌด ๋‚ก์•„ ์นœ๊ตฌ๋“ค๊ณผ ํ•จ๊ป˜ ์ง์ ‘ ๋ฆฌ๋ชจ๋ธ๋ง ํ•˜๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ ˆ์Šคํ† ๋ž‘์ด ์žˆ๋Š” ๊ณณ์€ ์Šค๋…ธ์šฐํƒ€์šด์œผ๋กœ ๋งค์šฐ ์ถ”์šด ์ง€์—ญ์ด์–ด์„œ ๋‚ด๋ถ€ ๊ณต์‚ฌ๋ฅผ ํ•˜๋Š” ๋„์ค‘์— ์ฃผ๊ธฐ์ ์œผ๋กœ ์™ธ๋ฒฝ์˜ ์ƒํƒœ๋ฅผ ์ ๊ฒ€ํ•ด์•ผ ํ•  ํ•„์š”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ ˆ์Šคํ† ๋ž‘์˜ ๊ตฌ์กฐ๋Š” ์™„์ „ํžˆ ๋™๊ทธ๋ž€ ๋ชจ์–‘์ด๊ณ  ์™ธ๋ฒฝ์˜ ์ด ๋‘˜๋ ˆ๋Š” n๋ฏธํ„ฐ์ด๋ฉฐ, ์™ธ๋ฒฝ์˜ ๋ช‡๋ช‡ ์ง€์ ์€ ์ถ”์œ„๊ฐ€ ์‹ฌํ•  ๊ฒฝ์šฐ ์†์ƒ๋  ์ˆ˜๋„ ์žˆ๋Š” ์ทจ์•ฝํ•œ ์ง€์ ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‚ด๋ถ€ ๊ณต์‚ฌ ๋„์ค‘์—๋„ ์™ธ๋ฒฝ์˜ ์ทจ์•ฝ ์ง€์ ๋“ค์ด ์†์ƒ๋˜์ง€ ์•Š์•˜๋Š” ์ง€, ์ฃผ๊ธฐ์ ์œผ๋กœ ์นœ๊ตฌ๋“ค์„ ๋ณด๋‚ด์„œ ์ ๊ฒ€์„ ํ•˜๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋งŒ, ๋น ๋ฅธ ๊ณต์‚ฌ ์ง„ํ–‰์„ ์œ„ํ•ด ์ ๊ฒ€ ์‹œ๊ฐ„์„ 1์‹œ๊ฐ„์œผ๋กœ ์ œํ•œํ–ˆ์Šต..