Alphabet

7:45~8:16

์ž˜ํ•œ ๋ถ€๋ถ„ ์ž…๋ ฅ ํฌ๊ธฐ ์ œํ•œ์€ R,C ๋ชจ๋‘ 20์ด๊ณ , ์•ŒํŒŒ๋ฒณ์„ ํ•œ๋ฒˆ๋งŒ ์‚ฌ์šฉํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž…๋ ฅ์œผ๋กœ ๋“ค์–ด์˜จ map[i][j]์˜ ์•ŒํŒŒ๋ฒณ์„ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜ํ•ด์„œ A(0), B(1), C(2),....T(19) ์ด 20๊ฐœ์˜ ์•ŒํŒŒ๋ฒณ์˜ ์ค‘๋ณต์„ ์ฒดํฌํ•˜๋Š” boolean ๋ฐฐ์—ด์„ ๋งŒ๋“ค์–ด์„œ DFS ํƒ์ƒ‰์„ ์ง„ํ–‰ํ–ˆ๋‹ค! ์•ŒํŒŒ๋ฒณ์€ ์ด 26๊ฐœ! ์ž…๋ ฅํฌ๊ธฐ๊ฐ€ 20๊ฐœ๋ผ๊ณ  ํ•ด์„œ A๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ 20๊ฐœ์˜ ์•ŒํŒŒ๋ฒณ๋งŒ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๊ฒฝ๊ธฐ๋„ ์˜ค์‚ฐ์ด๋‹ค!!!

map[i][j]์˜ ์•ŒํŒŒ๋ฒณ ๋ฌธ์ž์—์„œ 65๋ฅผ ๋นผ๋ฉด ๋ฌธ์ž๊ฐ€ A์ธ ๊ฒฝ์šฐ 0, B์ธ ๊ฒฝ์šฐ 1, C์ธ ๊ฒฝ์šฐ 2,...์ด๋ ‡๊ฒŒ ๋œ๋‹ค. ์ด๋ฏธ ์ง€๋‚˜์นœ ๋ฌธ์ž๋ผ๋ฉด alpha ๋ฐฐ์—ด์˜ ํ•ด๋‹น ์ธ๋ฑ์Šค๋Š” true๋กœ ๋˜์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋‹ค์Œ ์ขŒํ‘œ๋กœ ์ด๋™ํ•˜๋Š” ์žฌ๊ท€ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ์— ์ด alpha๋ฐฐ์—ด์˜ ๊ฐ’์ด false์ธ์ง€ ํ™•์ธํ•˜๊ณ  ์ง„ํ–‰ํ•ด์ฃผ๋ฉด ๋œ๋‹ค~!

if(!alph[map[i][j]-65]) {
    dfs(nx,ny,d+1);
}

ํ‹€๋ฆฐ ์ด์œ 0 ์ค‘๋ณต ๋ฐฉ๋ฌธ์„ ์ฒดํฌํ•˜๋Š” 2์ฐจ์› boolean ๋ฐฐ์—ด์€ ๋ถˆํ•„์š”ํ•˜๋‹ค! => ์•ŒํŒŒ๋ฒณ์ด ์ค‘๋ณต๋˜๋Š”์ง€ ์—ฌ๋ถ€๊ฐ€ ๋‹ค์Œ ์ขŒํ‘œ๋กœ ์ด๋™์„ ๊ฒฐ์ •ํ•˜๋Š” ์กฐ๊ฑด์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค!

ํ‹€๋ฆฐ ์ด์œ 1โญ๏ธโญ๏ธโญ๏ธโญ๏ธโญ๏ธ dfs ํ•จ์ˆ˜ ๋ฆฌํ„ด ํƒ€์ž…์„ ์ •์ˆ˜ํ˜•์œผ๋กœ ํ–ˆ๋‹ค. ํ˜„์žฌ ์ขŒํ‘œ๊ฐ€ x,y๋ผ๊ณ  ํ•˜๋ฉด x,y๊นŒ์ง€ ์ด๋ฅด๋Š” ๊ฑฐ๋ฆฌ๋ฅผ ๋งค๊ฐœ๋ณ€์ˆ˜ ans๋กœ 1์”ฉ ์ฆ๊ฐ€ํ•˜์—ฌ ๋‹ค์Œ ์žฌ๊ท€ํ•จ์ˆ˜ ํ˜ธ์ถœ์‹œ์— ๋„˜๊ฒจ์ฃผ์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ƒ๊ฐํ•ด๋ณด๋ฉด ์ด ๋ฌธ์ œ์—์„œ ๊ตฌํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฒƒ์€ "์ตœ๋‹จ ๊ฑฐ๋ฆฌ"๊ฐ€ ์•„๋‹ˆ๋ผ "์ตœ์žฅ ๊ฑฐ๋ฆฌ"์ด๊ธฐ ๋•Œ๋ฌธ์— ์ตœ์žฅ ๊ฑฐ๋ฆฌ๋Š” 7์ด ๋˜์—ˆ๋‹ค๊ฐ€ 8์ด ๋˜์—ˆ๋‹ค๊ฐ€ ํ•œ๋‹ค. ํ˜„์žฌ (x,y,8)์ด๊ณ  ํ˜„์žฌ์œ„์น˜(x,y)์—์„œ ๋” ์ด๋™ํ•  ์ธ์ ‘์ขŒํ‘œ๊ฐ€ ์—†๋‹ค๋ฉด ๋ฐฑํ•ด์•ผํ•œ๋‹ค. ๋ฆฌํ„ด๋˜์•ผํ•˜๋Š” ๋ง์ด๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ํ˜„์žฌ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์ธ ans๋ฅผ ๋ฆฌํ„ดํ•ด๋ฒ„๋ฆฌ๋ฉด ์ด์ „์œ„์น˜ ๋˜๋Š” ์›์œ„์น˜๋กœ ๋Œ์•„๊ฐ€๋„ x,y์— ์ด๋ฅด๋Š” ๊ฑฐ๋ฆฌ๋ฅผ ๋œปํ•˜๋Š” ans๋Š” ํฐ ๊ฐ’์œผ๋กœ ์—…๋ฐ์ดํŠธ ๋˜๋ฒ„๋ ค ์˜ค๋‹ต์œผ๋กœ ์ด๋ฅด๊ฒŒ ๋œ๋‹ค!

์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ํ•ด๋ณด๋ฉด 1 2 3, ans = 3. ์ด ans(3)๊ฐ’์ด (0,0)์›์œ„์น˜๊นŒ์ง€ ans๋กœ ์—…๋ฐ์ดํŠธ, ๋ฆฌํ„ด๋˜์„œ (0,0)์— ๋‹ค์‹œ ์™”์„ ๋•Œ ๊ฑฐ๋ฆฌ๊ฐ’์€ 1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ 3๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ฒŒ ๋˜๊ณ , (0,0)์—์„œ ๋‹ค์‹œ ์ตœ๋Œ“๊ฐ’์„ ๊ฐ€์ง€๋ ค ํƒ์ƒ‰์„ ํ•˜๋ฉด 3 4 5, ans = 5. ์ด๋ ‡๊ฒŒ ๋˜์–ด ans๋Š” 3์ด ์•„๋‹Œ 5๊ฐ€ ๋˜๋ฒ„๋ฆฐ๋‹ค!

๊ทธ๋Ÿฌ๋ฏ€๋กœ (x,y)์œ„์น˜์—์„œ์˜ ๊ฑฐ๋ฆฌ๊ฐ’์„ d๋ผ๊ณ  ํ•œ๋‹ค๋ฉด, ์žฌ๊ท€ํ•จ์ˆ˜๋ฅผ ๊ฑฐ๋“ญํ˜ธ์ถœํ•˜๋”๋ผ๋„ ์ด ๊ฑฐ๋ฆฌ๊ฐ’์€ ์ ˆ๋Œ€ ์†๋Œ€๋ฉด ์•ˆ๋œ๋‹ค! (์žฌ๊ท€ํ•จ์ˆ˜ ํ˜ธ์ถœํ•  ๋•Œ ์ œ์™ธํ•˜๊ณ !)

ํ‹€๋ฆฐ ์ด์œ 2 ์˜ˆ์ œ 1๋ฒˆ, 2๋ฒˆ ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ํ•œ๋ฒˆ์— ์›ํ•˜๋Š” ์ •๋‹ต์„ ์–ป์„ ์ˆ˜๋„ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์ž…๋ ฅ ํฌ๊ธฐ๊ฐ€ ์ปค์ง€๋ฉด ์ปค์งˆ ์ˆ˜๋ก, ์ตœ๋Œ“๊ฐ’์„ ์ฐพ๊ธฐ ์œ„ํ•œ ํƒ์ƒ‰์ด ๋ณต์žกํ•ด์ง„๋‹ค.

Brute Force>์žฌ๊ท€ ์œ ํ˜•์—์„œ x๋ฒˆ์งธ ์ˆซ์ž(๋ฌธ์ž)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์žฌ๊ท€ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•œ๋’ค ๋ฆฌํ„ด๋˜๊ณ  ๋‚˜๋ฉด ์‚ฌ์šฉํ•œ ์ˆซ์ž(๋ฌธ์ž)๋ฅผ false์ฒ˜๋ฆฌ ํ•ด์ฃผ๋Š” ๊ฒƒ์„ ๋ดค์„ ๊ฒƒ์ด๋‹ค. ์ด ๋ฌธ์ œ์—์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, ๋”์ด์ƒ ์ง„ํ–‰ํ•  ์ˆ˜ ์—†์„ ๋•Œ๊นŒ์ง€ ํƒ์ƒ‰์„ ์ง„ํ–‰ํ•˜๊ณ  ๋ฆฌํ„ด๋  ๋•Œ๋Š” ๊ทธ ์œ„์น˜ ์ขŒํ‘œ์—์„œ boolean๊ฐ’์„ ๋‹ค์‹œ ์›๋ž˜๋Œ€๋กœ falseํ•ด์ฃผ์–ด์•ผํ•œ๋‹ค!

ํ‹€๋ฆฐ ์ด์œ 3 ๊ฑฐ๋ฆฌ ์ตœ๋Œ“๊ฐ’ ๋น„๊ต ๋ถ€๋ถ„ ์—†์Œ! ๊ฑฐ๋ฆฌ ์ตœ๋Œ“๊ฐ’์€ 1->2->3->4->5->6->7->8->9๊นŒ์ง€ ๋๋‹ค๊ฐ€ ์ตœ๋Œ“๊ฐ’ ๊ฐฑ์‹  ๋ถ€๋ถ„์ด ์—†์œผ๋ฉด 9์—์„œ ์ž‘์€ ๊ฐ’์œผ๋กœ ๊ฐฑ์‹ ๋  ์ˆ˜๊ฐ€ ์žˆ๋‹ค! ๊ทธ๋Ÿฌ๋ฏ€๋กœ ๊ผญ ๊ผญ ์ตœ๋Œ“๊ฐ’์œผ๋กœ ๊ฐฑ์‹ ํ•˜๋Š” ๋ถ€๋ถ„์ด ์žˆ์–ด์ค˜์•ผํ•œ๋‹ค!!!!!!!

Last updated