๋ชฉ๋ก๐ฆฅ ์ฝํ /BAEKJOON (287)
๐ ๊ณต๋ถํ๋ ์ง์ง์ํ์นด๋ ์ฒ์์ด์ง?
์ด๋ฅธ ์์ด ์์ด๊ฐ ์ฌ๋ ๊ณต๊ฐ์ ๋ ์ด์ ๋ฌผ๊ณ ๊ธฐ๋ ์ค์ง ์๊ณ ๋ค๋ฅธ ์์ด๋ค๋ง์ด ๋จ์์๋ค ์์ด์๋ 1 ์ด์ M ์ดํ์ ์์ฐ์ ๋ฒํธ๊ฐ ๋ถ์ด ์๊ณ , ๋ชจ๋ ๋ฒํธ๋ ์๋ก ๋ค๋ฅด๋ค ์์ด๋ค์ ์์ญ์ ์ฌ์ํ๊ธฐ ์ํด ๋ค๋ฅธ ์์ด๋ค์ ์ซ์๋ด๋ ค๊ณ ํ๋๋ฐ, 1์ ๋ฒํธ๋ฅผ ๊ฐ์ง ์ด๋ฅธ ์์ด๋ ๊ฐ์ฅ ๊ฐ๋ ฅํด์ ๋๋จธ์ง ๋ชจ๋๋ฅผ ์ซ์๋ผ ์ ์๋ค N×N ํฌ๊ธฐ์ ๊ฒฉ์ ์ค M๊ฐ์ ์นธ์ ์์ด๊ฐ ํ ๋ง๋ฆฌ์ฉ ๋ค์ด ์๋ค 1) ๋งจ ์ฒ์์๋ ๋ชจ๋ ์์ด๊ฐ ์์ ์ ์์น์ ์์ ์ ๋์๋ฅผ ๋ฟ๋ฆฐ๋ค 2) 1์ด๋ง๋ค ๋ชจ๋ ์์ด๊ฐ ๋์์ ์ํ์ข์ฐ๋ก ์ธ์ ํ ์นธ ์ค ํ๋๋ก ์ด๋ํ๊ณ , ์์ ์ ๋์๋ฅผ ๊ทธ ์นธ์ ๋ฟ๋ฆฐ๋ค 3) ๋์๋ ์์ด๊ฐ k๋ฒ ์ด๋ํ๊ณ ๋๋ฉด ์ฌ๋ผ์ง๋ค ๊ฐ ์์ด๊ฐ ์ด๋ ๋ฐฉํฅ์ ๊ฒฐ์ ํ ๋๋, ๋จผ์ ์ธ์ ํ ์นธ ์ค ์๋ฌด ๋์๊ฐ ์๋ ์นธ์ ๋ฐฉํฅ์ผ๋ก ์ก๋๋ค ๊ทธ๋ฐ ์นธ์ด ์์ผ๋ฉด ์์ ์ ..
์ฒญ์๋ ์์ด 4×4ํฌ๊ธฐ์ ๊ณต๊ฐ์ด ์๊ณ , ํฌ๊ธฐ๊ฐ 1×1์ธ ์ ์ฌ๊ฐํ ์นธ์ผ๋ก ๋๋์ด์ ธ ์๋ค ๊ณต๊ฐ์ ๊ฐ ์นธ์ (x, y)์ ๊ฐ์ด ํํํ๋ฉฐ, x๋ ํ์ ๋ฒํธ, y๋ ์ด์ ๋ฒํธ ํ ์นธ์๋ ๋ฌผ๊ณ ๊ธฐ๊ฐ ํ ๋ง๋ฆฌ ์กด์ฌ ๋ฌผ๊ณ ๊ธฐ๋ ๋ฒํธ์ ๋ฐฉํฅ์ ๊ฐ์ง๊ณ ์๋ค ๋ฒํธ๋ 1๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 16๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์ ๋ ๋ฌผ๊ณ ๊ธฐ๊ฐ ๊ฐ์ ๋ฒํธ๋ฅผ ๊ฐ๋ ๊ฒฝ์ฐ๋ ์๋ค ๋ฐฉํฅ์ 8๊ฐ์ง ๋ฐฉํฅ(์ํ์ข์ฐ, ๋๊ฐ์ ) ์ค ํ๋ ์ฒญ์๋ ์์ด๊ฐ ์ด ๊ณต๊ฐ์ ๋ค์ด๊ฐ ๋ฌผ๊ณ ๊ธฐ๋ฅผ ๋จน์ผ๋ ค๊ณ ํ๋ค ์ฒญ์๋ ์์ด๋ (0, 0)์ ์๋ ๋ฌผ๊ณ ๊ธฐ๋ฅผ ๋จน๊ณ , (0, 0)์ ๋ค์ด๊ฐ๊ฒ ๋๋ค ์์ด์ ๋ฐฉํฅ์ (0, 0)์ ์๋ ๋ฌผ๊ณ ๊ธฐ์ ๋ฐฉํฅ๊ณผ ๊ฐ๋ค ์ดํ ๋ฌผ๊ณ ๊ธฐ๊ฐ ์ด๋ํ๋ค 1) ๋ฌผ๊ณ ๊ธฐ๋ ๋ฒํธ๊ฐ ์์ ๋ฌผ๊ณ ๊ธฐ๋ถํฐ ์์๋๋ก ์ด๋ํ๋ค ๋ฌผ๊ณ ๊ธฐ๋ ํ ์นธ์ ์ด๋ ์ด๋ํ ์ ์๋ ์นธ์ ๋น ์นธ๊ณผ ๋ค๋ฅธ ..
์๊ธฐ์์ด N×N ํฌ๊ธฐ์ ๊ณต๊ฐ์ ๋ฌผ๊ณ ๊ธฐ M๋ง๋ฆฌ์ ์๊ธฐ ์์ด 1๋ง๋ฆฌ ๊ณต๊ฐ์ 1×1 ํฌ๊ธฐ์ ์ ์ฌ๊ฐํ ์นธ์ผ๋ก ๋๋์ด์ ธ ์๋ค ํ ์นธ์๋ ๋ฌผ๊ณ ๊ธฐ๊ฐ ์ต๋ 1๋ง๋ฆฌ ์กด์ฌ ์๊ธฐ ์์ด์ ๋ฌผ๊ณ ๊ธฐ๋ ๋ชจ๋ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง๊ณ ์๊ณ , ์ด ํฌ๊ธฐ๋ ์์ฐ์ ๊ฐ์ฅ ์ฒ์ ์๊ธฐ ์์ด ํฌ๊ธฐ๋ 2์ด๊ณ , 1์ด์ ์ํ์ข์ฐ๋ก ํ ์นธ์ฉ ์ด๋ ์๊ธฐ ์์ด๋ ์์ ์ ํฌ๊ธฐ๋ณด๋ค ํฐ ๋ฌผ๊ณ ๊ธฐ๊ฐ ์๋ ์นธ์ ์ง๋๊ฐ ์ ์๊ณ , ๋๋จธ์ง ์นธ์ ๋ชจ๋ ์ง๋๊ฐ ์ ์๋ค ์๊ธฐ ์์ด๋ ์์ ์ ํฌ๊ธฐ๋ณด๋ค ์์ ๋ฌผ๊ณ ๊ธฐ๋ง ๋จน์ ์ ์๋ค ํฌ๊ธฐ๊ฐ ๊ฐ์ ๋ฌผ๊ณ ๊ธฐ๋ ๋จน์ ์ ์์ง๋ง, ๊ทธ ๋ฌผ๊ณ ๊ธฐ๊ฐ ์๋ ์นธ์ ์ง๋๊ฐ ์ ์๋ค ์๊ธฐ ์์ด๊ฐ ์ด๋๋ก ์ด๋ํ ์ง ๊ฒฐ์ ํ๋ ๋ฐฉ๋ฒ 1) ๋ ์ด์ ๋จน์ ์ ์๋ ๋ฌผ๊ณ ๊ธฐ๊ฐ ๊ณต๊ฐ์ ์๋ค๋ฉด ์๊ธฐ ์์ด๋ ์๋ง ์์ด์๊ฒ ๋์์ ์์ฒญ 2) ๋จน์ ์ ์๋ ๋ฌผ๊ณ ๊ธฐ๊ฐ 1๋ง๋ฆฌ๋ผ๋ฉด, ๊ทธ ๋ฌผ๊ณ ..
์ปจ๋ฒ ์ด์ด ๋ฒจํธ ์์ ๋ก๋ด ๊ธธ์ด๊ฐ N์ธ ์ปจ๋ฒ ์ด์ด ๋ฒจํธ ๊ธธ์ด๊ฐ 2N์ธ ๋ฒจํธ๊ฐ ์ด ์ปจ๋ฒ ์ด์ด ๋ฒจํธ๋ฅผ ์์๋๋ก ๊ฐ์ธ๋ฉฐ ๋๊ณ ์๋ค ๋ฒจํธ๋ ๊ธธ์ด 1 ๊ฐ๊ฒฉ์ผ๋ก 2N๊ฐ์ ์นธ์ผ๋ก ๋๋์ด์ ธ ์์ผ๋ฉฐ, ๋ฒํธ๊ฐ ๋งค๊ฒจ์ ธ ์๋ค ๋ฒจํธ๊ฐ ํ ์นธ ํ์ ํ๋ฉด 1๋ฒ๋ถํฐ 2N-1๋ฒ๊น์ง์ ์นธ์ ๋ค์ ๋ฒํธ์ ์นธ์ด ์๋ ์์น๋ก ์ด๋ 2N๋ฒ ์นธ์ 1๋ฒ ์นธ์ ์์น๋ก ์ด๋ i๋ฒ ์นธ์ ๋ด๊ตฌ๋๋ Ai 1๋ฒ ์นธ์ด ์๋ ์์น๋ฅผ "์ฌ๋ฆฌ๋ ์์น", N๋ฒ ์นธ์ด ์๋ ์์น๋ฅผ "๋ด๋ฆฌ๋ ์์น" ์ปจ๋ฒ ์ด์ด ๋ฒจํธ์ ๋ฐ์ค ๋ชจ์ ๋ก๋ด์ ํ๋์ฉ ์ฌ๋ฆฌ๋ ค๊ณ ํ๋ค ๋ก๋ด์ ์ฌ๋ฆฌ๋ ์์น์๋ง ์ฌ๋ฆด ์ ์๋ค ์ธ์ ๋ ์ง ๋ก๋ด์ด ๋ด๋ฆฌ๋ ์์น์ ๋๋ฌํ๋ฉด ๊ทธ ์ฆ์ ๋ด๋ฆฐ๋ค ๋ก๋ด์ ์ปจ๋ฒ ์ด์ด ๋ฒจํธ ์์์ ์ค์ค๋ก ์ด๋ํ ์ ์๋ค ๋ก๋ด์ ์ฌ๋ฆฌ๋ ์์น์ ์ฌ๋ฆฌ๊ฑฐ๋ ๋ก๋ด์ด ์ด๋ค ์นธ์ผ๋ก ์ด๋ํ๋ฉด ๊ทธ ์นธ์ ๋ด๊ตฌ๋๋ ์ฆ์ ..
์คํํธ ํ์ ์คํํธ ํ์๋ ์๋์ ๋์ฐฉ์ง๋ก ๋ฐ๋ ค๋ค์ค ๋๋ง๋ค ์ฐ๋ฃ๊ฐ ์ถฉ์ ๋๊ณ , ์ฐ๋ฃ๊ฐ ๋ฐ๋ฅ๋๋ฉด ๊ทธ ๋ ์ ์ ๋ฌด๊ฐ ๋๋จ ํ์ ๊ธฐ์ฌ๋ ์ค๋ M๋ช ์ ์น๊ฐ์ ํ์ฐ๋ ๊ฒ์ด ๋ชฉํ ํ๋ ์์ญ์ N×N ํฌ๊ธฐ์ ๊ฒฉ์, ๊ฐ ์นธ์ ๋น์ด ์๊ฑฐ๋ ๋ฒฝ์ด ๋์ฌ ์์ ํ์๊ฐ ๋น์นธ์ ์์ ๋, ์ํ์ข์ฐ๋ก ์ธ์ ํ ๋น์นธ ์ค ํ๋๋ก ์ด๋ ํน์ ์์น๋ก ์ด๋ํ ๋ ํญ์ ์ต๋จ๊ฒฝ๋ก๋ก๋ง ์ด๋ M๋ช ์ ์น๊ฐ์ ๋น์นธ ์ค ํ๋์ ์ ์์ผ๋ฉฐ, ๋ค๋ฅธ ๋น์นธ ์ค ํ๋๋ก ์ด๋ ์ฌ๋ฌ ์น๊ฐ์ด ๊ฐ์ด ํ์นํ๋ ๊ฒฝ์ฐ๋ ์์ ํ์ ๊ธฐ์ฌ๋ ํ ์น๊ฐ์ ํ์ ๋ชฉ์ ์ง๋ก ์ด๋์ํค๋ ์ผ์ M๋ฒ ๋ฐ๋ณต ๊ฐ ์น๊ฐ์ ์ค์ค๋ก ์์ง์ด์ง ์์ผ๋ฉฐ, ์ถ๋ฐ์ง์์๋ง ํ์์ ํ ์ ์๊ณ , ๋ชฉ์ ์ง์์๋ง ํ์์์ ๋ด๋ฆด ์ ์์ ํ์๊ธฐ์ฌ๊ฐ ํ์ธ ์น๊ฐ์ ๊ณ ๋ฅผ ๋๋ ํ์ฌ ์์น์์ ์ต๋จ๊ฑฐ๋ฆฌ๊ฐ ๊ฐ์ฅ ์งง์ ์น๊ฐ์ ๊ณ ๋ฆ ์น๊ฐ..
๋ง๋ฒ์ฌ ์์ด์ ๋ณต์ 4 × 4 ํฌ๊ธฐ์ ๊ฒฉ์์์ ์ฐ์ต (r, c)๋ ๊ฒฉ์์ rํ c์ด ๊ฒฉ์์ ๊ฐ์ฅ ์ผ์ชฝ ์ ์นธ์ (1, 1)์ด๊ณ , ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ์๋ซ ์นธ์ (4, 4) ๊ฒฉ์์๋ ๋ฌผ๊ณ ๊ธฐ M๋ง๋ฆฌ ๋ฌผ๊ณ ๊ธฐ๋ ๊ฒฉ์์ ์นธ ํ๋์ ๋ค์ด๊ฐ ์์ผ๋ฉฐ, ์ด๋ ๋ฐฉํฅ์ ๊ฐ์ง๊ณ ์์ ์ด๋ ๋ฐฉํฅ์ 8๊ฐ์ง ๋ฐฉํฅ(์ํ์ข์ฐ, ๋๊ฐ์ ) ์ค ํ๋ ๋ง๋ฒ์ฌ ์์ด์ ์์ด๋ ๊ฒฉ์์ ํ ์นธ์ ๋ค์ด๊ฐ์์ ๋ ์ด์์ ๋ฌผ๊ณ ๊ธฐ๊ฐ ๊ฐ์ ์นธ์ ์์ ์๋ ์์ผ๋ฉฐ, ๋ง๋ฒ์ฌ ์์ด์ ๋ฌผ๊ณ ๊ธฐ๊ฐ ๊ฐ์ ์นธ์ ์์ ์๋ ์์ ์์ด์ ๋ง๋ฒ ์ฐ์ต ํ ๋ฒ 1) ์์ด๊ฐ ๋ชจ๋ ๋ฌผ๊ณ ๊ธฐ์๊ฒ ๋ณต์ ๋ง๋ฒ์ ์์ ๋ณต์ ๋ง๋ฒ์ ์๊ฐ์ด ์กฐ๊ธ ๊ฑธ๋ฆฌ๊ธฐ ๋๋ฌธ์, 5) ์์ ๋ฌผ๊ณ ๊ธฐ๊ฐ ๋ณต์ ๋์ด ์นธ์ ๋ํ๋จ 2) ๋ชจ๋ ๋ฌผ๊ณ ๊ธฐ๊ฐ ํ ์นธ ์ด๋ ์์ด๊ฐ ์๋ ์นธ, ๋ฌผ๊ณ ๊ธฐ์ ๋์๊ฐ ์๋ ์นธ, ๊ฒฉ์์ ๋ฒ์๋ฅผ ๋ฒ์ด๋๋ ..
๋ง๋ฒ์ฌ ์์ด์ ๋ธ๋ฆฌ์๋ ํฌ๊ธฐ๊ฐ N×N์ธ ๊ฒฉ์์์ ์ฐ์ต N์ ํญ์ ํ์์ด๊ณ , (r, c)๋ ๊ฒฉ์์ rํ c์ด ๊ฒฉ์์ ๊ฐ์ฅ ์ผ์ชฝ ์ ์นธ์ (1, 1)์ด๊ณ , ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ์๋ซ ์นธ์ (N, N) ๋ง๋ฒ์ฌ ์์ด๋ ((N+1)/2, (N+1)/2) ์ผ๋ถ ์นธ๊ณผ ์นธ ์ฌ์ด์๋ ๋ฒฝ์ด ์ธ์์ ธ ์์ผ๋ฉฐ, ์ค์ ์ ๋ฒฝ, ์ ์ ์ ๋ฒฝ์ด ์๋ ์นธ์ ์ ํ์๋ ์๋ ์นธ์ ๋ฒํธ ๊ฐ์ฅ ์ฒ์์ ์์ด๊ฐ ์๋ ์นธ์ ์ ์ธํ ๋๋จธ์ง ์นธ์๋ ๊ตฌ์ฌ์ด ํ๋ ๋ค์ด๊ฐ ์ ์์ ๊ตฌ์ฌ์ 1๋ฒ ๊ตฌ์ฌ, 2๋ฒ ๊ตฌ์ฌ, 3๋ฒ ๊ตฌ์ฌ ๊ฐ์ ๋ฒํธ๋ฅผ ๊ฐ์ง ๊ตฌ์ฌ์ด ๋ฒํธ๊ฐ ์ฐ์ํ๋ ์นธ์ ์์ผ๋ฉด, ๊ทธ ๊ตฌ์ฌ์ ์ฐ์ํ๋ ๊ตฌ์ฌ ๋ฐฉํฅ di์ ๊ฑฐ๋ฆฌ si 4๊ฐ์ง ๋ฐฉํฅ ↑, ↓, ←, →๊ฐ ์๊ณ , ์ ์ 1, 2, 3, 4 ์์ด๋ di ๋ฐฉํฅ์ผ๋ก ๊ฑฐ๋ฆฌ๊ฐ si ์ดํ์ธ ๋ชจ๋ ์นธ์ ์ผ์ ํํธ์ ๋์ ธ ๊ทธ ์นธ์..
๋ง๋ฒ์ฌ ์์ด์ ๋น๋ฐ๋ผ๊ธฐ ๋น๋ฐ๋ผ๊ธฐ๋ฅผ ์์ ํ๋ฉด ํ๋์ ๋น๊ตฌ๋ฆ์ ๋ง๋ค ์ ์๋ค N×N์ธ ๊ฒฉ์์์ ์ฐ์ต ๊ฒฉ์์ ๊ฐ ์นธ์๋ ๋ฐ๊ตฌ๋๊ฐ ํ๋ ์๊ณ , ๋ฐ๊ตฌ๋๋ ์นธ ์ ์ฒด๋ฅผ ์ฐจ์ง ๋ฐ๊ตฌ๋์ ์ ์ฅํ ์ ์๋ ๋ฌผ์ ์์๋ ์ ํ์ด ์์ A[r][c]๋ (r, c)์ ์๋ ๋ฐ๊ตฌ๋์ ์ ์ฅ๋์ด ์๋ ๋ฌผ์ ์ ๊ฒฉ์์ ๊ฐ์ฅ ์ผ์ชฝ ์ ์นธ์ (1, 1)์ด๊ณ , ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ์๋ซ ์นธ์ (N, N) ์ฐ์ต ์ํด 1๋ฒ ํ๊ณผ N๋ฒ ํ์ ์ฐ๊ฒฐํ๊ณ , 1๋ฒ ์ด๊ณผ N๋ฒ ์ด๋ ์ฐ๊ฒฐ N๋ฒ ํ์ ์๋์ 1๋ฒ ํ์ด, 1๋ฒ ํ์ ์์๋ N๋ฒ ํ์ด ์๊ณ , 1๋ฒ ์ด์ ์ผ์ชฝ์๋ N๋ฒ ์ด์ด, N๋ฒ ์ด์ ์ค๋ฅธ์ชฝ์๋ 1๋ฒ ์ด์ด ์์ ๋น๋ฐ๋ผ๊ธฐ๋ฅผ ์์ ํ๋ฉด (N, 1), (N, 2), (N-1, 1), (N-1, 2)์ ๋น๊ตฌ๋ฆ์ด ์๊ธด๋ค ๊ตฌ๋ฆ์ ์ด๋์ M๋ฒ ๋ช ๋ น (๊ตฌ๋ฆ์ ์นธ ์ ์ฒด๋ฅผ ์ฐจ..