๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋กDFS (19)

JUINTINATION

๋ฐฑ์ค€ 16938๋ฒˆ: ์บ ํ”„ ์ค€๋น„

๋ฌธ์ œ https://www.acmicpc.net/problem/16938 16938๋ฒˆ: ์บ ํ”„ ์ค€๋น„ ๋‚œ์ด๋„๊ฐ€ 10, 30์ธ ๋ฌธ์ œ๋ฅผ ๊ณ ๋ฅด๊ฑฐ๋‚˜, 20, 30์ธ ๋ฌธ์ œ๋ฅผ ๊ณ ๋ฅด๋ฉด ๋œ๋‹ค. www.acmicpc.net ํ’€์ด ์ด ๋ฌธ์ œ์—์„œ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์บ ํ”„๋ฅผ ์—ฌ๋Š” ๊ธฐ์ค€์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” 2๋ฌธ์ œ ์ด์ƒ์ด์–ด์•ผ ํ•œ๋‹ค. ๋‚œ์ด๋„์˜ ํ•ฉ์€ L ์ด์ƒ, R ์ดํ•˜์—ฌ์•ผ ํ•œ๋‹ค. ๊ฐ€์žฅ ์–ด๋ ค์šด ๋ฌธ์ œ์™€ ๊ฐ€์žฅ ์‰ฌ์šด ๋ฌธ์ œ์˜ ๋‚œ์ด๋„ ์ฐจ์ด๋Š” X ์ด์ƒ์ด์–ด์•ผ ํ•œ๋‹ค. ์บ ํ”„์— ์‚ฌ์šฉํ•  ๋ฌธ์ œ๋ฅผ ๊ณ ๋ฅด๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์ด๋ฉฐ dfs๋ฅผ ์ด์šฉํ•˜์—ฌ ํ•ด๊ฒฐํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ C์–ธ์–ด ๋ชจ๋“  ์ž…๋ ฅ์„ ๋ฐ›์€ ํ›„์— qsort ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ฐ ๋ฌธ์ œ์˜ ๋‚œ์ด๋„๊ฐ€ ๋‹ด๊ธด ์ •์ˆ˜ ๋ฐฐ์—ด arr๋ฅผ ์ •๋ ฌํ•œ ํ›„์— dfs ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์ฒ˜์Œ๋ถ€ํ„ฐ ํƒ์ƒ‰ํ•˜๊ธฐ ์œ„ํ•ด i..

๋ฐฑ์ค€ 16936๋ฒˆ: ๋‚˜3๊ณฑ2

๋ฌธ์ œ https://www.acmicpc.net/problem/16936 16936๋ฒˆ: ๋‚˜3๊ณฑ2 ๋‚˜3๊ณฑ2 ๊ฒŒ์ž„์€ ์ •์ˆ˜ ํ•˜๋‚˜๋ฅผ ์ด์šฉํ•œ๋‹ค. ๊ฐ€์žฅ ๋จผ์ €, ์ •์ˆ˜ x๋กœ ์‹œ์ž‘ํ•˜๊ณ , ์—ฐ์‚ฐ์„ N-1๋ฒˆ ์ ์šฉํ•œ๋‹ค. ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์—ฐ์‚ฐ์€ ๋‘ ๊ฐ€์ง€ ์žˆ๊ณ , ์•„๋ž˜์™€ ๊ฐ™๋‹ค. ๋‚˜3: x๋ฅผ 3์œผ๋กœ ๋‚˜๋ˆˆ๋‹ค. x๋Š” 3์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ ธ์•ผ www.acmicpc.net ํ’€์ด ์ •์ˆ˜ x๊ฐ€ ์žˆ์„ ๋•Œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ 2๊ฐœ์˜ ์—ฐ์‚ฐ์„ N-1๋ฒˆ ์ ์šฉํ•˜๋Š” ๊ฒŒ์ž„์„ ์ด์šฉํ•˜์—ฌ ๋งŒ๋“  ์ˆ˜์—ด a๋ฅผ ์„ž์€ ์ˆ˜์—ด b๋ฅผ ์ž…๋ ฅ๋ฐ›๊ณ  a๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๋‚˜3: x๋ฅผ 3์œผ๋กœ ๋‚˜๋ˆˆ๋‹ค. x๋Š” 3์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ ธ์•ผ ํ•œ๋‹ค. ๊ณฑ2: x์— 2๋ฅผ ๊ณฑํ•œ๋‹ค. ์ฝ”๋“œ C์–ธ์–ด ๋จผ์ € ์ˆ˜์—ด b๋ฅผ qsort๋ฅผ ์ด์šฉํ•˜์—ฌ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•ฉ๋‹ˆ๋‹ค. ๋ฐฉ๋ฌธ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•ด์ฃผ๋Š” boolํ˜• ์ •์ˆ˜ ๋ฐฐ์—ด visited..

๋ฐฑ์ค€ 16945๋ฒˆ: ๋งค์ง ์Šคํ€˜์–ด๋กœ ๋ณ€๊ฒฝํ•˜๊ธฐ

๋ฌธ์ œ https://www.acmicpc.net/problem/16945 16945๋ฒˆ: ๋งค์ง ์Šคํ€˜์–ด๋กœ ๋ณ€๊ฒฝํ•˜๊ธฐ 1๋ถ€ํ„ฐ N2๊นŒ์ง€์˜ ์ˆ˜๊ฐ€ ํ•˜๋‚˜์”ฉ ์ฑ„์›Œ์ ธ ์žˆ๋Š” ํฌ๊ธฐ๊ฐ€ N×N์ธ ๋ฐฐ์—ด์ด ์žˆ๊ณ , ์ด ๋ฐฐ์—ด์˜ ๋ชจ๋“  ํ–‰, ์—ด, ๊ธธ์ด๊ฐ€ N์ธ ๋Œ€๊ฐ์„ ์˜ ํ•ฉ์ด ๋ชจ๋‘ ๊ฐ™์„ ๋•Œ, ๋งค์ง ์Šคํ€˜์–ด๋ผ๊ณ  ํ•œ๋‹ค. ํฌ๊ธฐ๊ฐ€ 3×3์ธ ๋ฐฐ์—ด A๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, www.acmicpc.net ํ’€์ด ํฌ๊ธฐ๊ฐ€ 3 × 3์ธ ๋ฐฐ์—ด์„ 1๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆ˜๊ฐ€ 1๊ฐœ์”ฉ ๋“ค์–ด์žˆ๊ณ  ๋ชจ๋“  ํ–‰, ์—ด, ๋Œ€๊ฐ์„ ์˜ ํ•ฉ์ด ๋ชจ๋‘ ๊ฐ™์€ ๋งค์ง ์Šคํ€˜์–ด๋กœ ๋ณ€๊ฒฝํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ•œ ์นธ์— ์žˆ๋Š” ์ˆ˜ a๋ฅผ b๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๋น„์šฉ์€ |a - b|์ผ ๋•Œ ๋งค์ง ์Šคํ€˜์–ด๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ์ตœ์†Œ ๋น„์šฉ์„ ๊ตฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ C์–ธ์–ด ์ง€๋‚œ๋ฒˆ์— ์ž‘์„ฑํ–ˆ๋˜ ์Šค๋„์ฟ  ๋ฌธ์ œ์™€ ๋น„์Šทํ•ฉ๋‹ˆ๋‹ค. ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋Š” 3 x 3์œผ๋กœ ํฌ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ..

๋ฐฑ์ค€ 4574๋ฒˆ: ์Šค๋„๋ฏธ๋…ธ์ฟ 

๋ฌธ์ œ https://www.acmicpc.net/problem/4574 4574๋ฒˆ: ์Šค๋„๋ฏธ๋…ธ์ฟ  ์ž…๋ ฅ์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ์ฒซ์งธ ์ค„์—๋Š” ์ฑ„์›Œ์ ธ ์žˆ๋Š” ๋„๋ฏธ๋…ธ์˜ ๊ฐœ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. (10 ≤ N ≤ 35) ๋‹ค์Œ N๊ฐœ ์ค„์—๋Š” ๋„๋ฏธ๋…ธ ํ•˜๋‚˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” U LU V LV๊ฐ€ www.acmicpc.net ํ’€์ด ์Šค๋„๋ฏธ๋…ธ์ฟ ๋Š” ์Šค๋„์ฟ ์™€ ๋„๋ฏธ๋…ธ๋ฅผ ํ˜ผํ•ฉํ•œ ๊ฒŒ์ž„์œผ๋กœ 9 x 9 ํฌ๊ธฐ์˜ ๋ณด๋“œ์— 1๋ถ€ํ„ฐ 9๊นŒ์ง€ ์ˆซ์ž๊ฐ€ 1๊ฐœ์”ฉ ์“ฐ์—ฌ์ ธ ์žˆ๊ณ , ๋‚˜๋จธ์ง€ 72์นธ์€ ๋„๋ฏธ๋…ธ ํƒ€์ผ 36๊ฐœ๋กœ ์ฑ„์›Œ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋„๋ฏธ๋…ธ ํƒ€์ผ์€ 1๋ถ€ํ„ฐ 9๊นŒ์ง€ ์„œ๋กœ ๋‹ค๋ฅธ ์ˆซ์ž์˜ ์Œ(1+2, 1+3, 1+4, 1+5, 1+6, 1+7, 1+8, 1+9, 2+3, 2+4, 2+5, ... , 8 + 9)์ด ๋ชจ๋‘ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋•Œ ..

๋ฐฑ์ค€ 2580๋ฒˆ: ์Šค๋„์ฟ 

๋ฌธ์ œ https://www.acmicpc.net/problem/2580 2580๋ฒˆ: ์Šค๋„์ฟ  ์Šค๋„์ฟ ๋Š” 18์„ธ๊ธฐ ์Šค์œ„์Šค ์ˆ˜ํ•™์ž๊ฐ€ ๋งŒ๋“  '๋ผํ‹ด ์‚ฌ๊ฐํ˜•'์ด๋ž‘ ํผ์ฆ์—์„œ ์œ ๋ž˜ํ•œ ๊ฒƒ์œผ๋กœ ํ˜„์žฌ ๋งŽ์€ ์ธ๊ธฐ๋ฅผ ๋ˆ„๋ฆฌ๊ณ  ์žˆ๋‹ค. ์ด ๊ฒŒ์ž„์€ ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ๊ฐ€๋กœ, ์„ธ๋กœ ๊ฐ๊ฐ 9๊ฐœ์”ฉ ์ด 81๊ฐœ์˜ ์ž‘์€ ์นธ์œผ๋กœ ์ด๋ฃจ www.acmicpc.net ํ’€์ด ์Šค๋„์ฟ  ๊ทœ์น™์— ๋งž์ถฐ 9 x 9 ํฌ๊ธฐ์˜ ๋ณด๋“œ๋ฅผ ์ฑ„์šฐ๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. dfs๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ชจ๋“  ์นธ์— ๋Œ€ํ•ด ์–ด๋–ค ์ˆซ์ž๊ฐ€ ํ•ด๋‹น ์นธ์— ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ์—ฌ๋ถ€๋ฅผ sudoku ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด ํ™•์ธ๋ฐ›์•„๊ฐ€๋ฉฐ 2์ฐจ์› ์ •์ˆ˜ ๋ฐฐ์—ด์— ๊ธฐ๋กํ•˜๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ C์–ธ์–ด 2์ฐจ์› ์ •์ˆ˜ ๋ฐฐ์—ด arr๋กœ 9 x 9 ํฌ๊ธฐ์˜ ๋ณด๋“œ๋ฅผ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. dfs ํ•จ์ˆ˜์—์„œ ๋ณด๋“œ์˜ (x, y)์˜ ์œ„์น˜์— ์žˆ๋Š” ์ˆซ์ž๋ฅผ arr[y][..