๋ชฉ๋ก์ ์ฒด ๊ธ (1005)
๐ ๊ณต๋ถํ๋ ์ง์ง์ํ์นด๋ ์ฒ์์ด์ง?
์คํํธ ํ์ ์คํํธ ํ์๋ ์๋์ ๋์ฐฉ์ง๋ก ๋ฐ๋ ค๋ค์ค ๋๋ง๋ค ์ฐ๋ฃ๊ฐ ์ถฉ์ ๋๊ณ , ์ฐ๋ฃ๊ฐ ๋ฐ๋ฅ๋๋ฉด ๊ทธ ๋ ์ ์ ๋ฌด๊ฐ ๋๋จ ํ์ ๊ธฐ์ฌ๋ ์ค๋ 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๋ฒ ๋ช ๋ น (๊ตฌ๋ฆ์ ์นธ ์ ์ฒด๋ฅผ ์ฐจ..
๋ง๋ฒ์ฌ ์์ด์ ํ์ด์ด์คํฐ ๋ง๋ฒ์ฌ ์์ด๋ ํ์ด์ด๋ณผ๊ณผ ํ ๋ค์ด๋๋ฅผ ์กฐํฉํด ํ์ด์ด์คํฐ์ ์์ ํ์ด์ด์คํฐ์ ํฌ๊ธฐ๊ฐ 2N × 2N์ธ ๊ฒฉ์๋ก ๋๋์ด์ง ์ผ์ํ์์ ์ฐ์ต ์์น (r, c)๋ ๊ฒฉ์์ rํ c์ด์ ์๋ฏธ A[r][c]๋ (r, c)์ ์๋ ์ผ์์ ์ A[r][c]๊ฐ 0์ธ ๊ฒฝ์ฐ ์ผ์์ด ์๋ ๊ฒ ํ์ด์ด์คํฐ์ ์์ ํ๋ ค๋ฉด ์์ ํ ๋๋ง๋ค ๋จ๊ณ L์ ๊ฒฐ์ ๊ฒฉ์๋ฅผ 2L × 2L ํฌ๊ธฐ์ ๋ถ๋ถ ๊ฒฉ์๋ก ๋๋๋ค ๋ชจ๋ ๋ถ๋ถ ๊ฒฉ์๋ฅผ ์๊ณ ๋ฐฉํฅ์ผ๋ก 90๋ ํ์ ์ผ์์ด ์๋ ์นธ 3๊ฐ ๋๋ ๊ทธ ์ด์๊ณผ ์ธ์ ํด์์ง ์์ ์นธ์ ์ผ์์ ์์ด 1 ์ค์ด๋ฆ (r, c)์ ์ธ์ ํ ์นธ์ (r-1, c), (r+1, c), (r, c-1), (r, c+1) ๋ง๋ฒ์ฌ ์์ด๋ ํ์ด์ด์คํฐ์ ์ด Q๋ฒ ์์ 1) ๋จ์์๋ ์ผ์ A[r][c]์ ํฉ 2) ๋จ์์๋ ์ผ์..
๋ง๋ฒ์ฌ ์์ด์ ํ ๋ค์ด๋ ํ ๋ค์ด๋๋ฅผ ํฌ๊ธฐ๊ฐ N×N์ธ ๊ฒฉ์๋ก ๋๋์ด์ง ๋ชจ๋๋ฐญ์์ ์ฐ์ต ๊ฒฉ์์ rํ c์ด์ ์๋ฏธํ๊ณ , A[r][c]๋ (r, c)์ ์๋ ๋ชจ๋์ ์ ํ ๋ค์ด๋๋ฅผ ์์ ํ๋ฉด ๊ฒฉ์์ ๊ฐ์ด๋ฐ ์นธ๋ถํฐ ํ ๋ค์ด๋์ ์ด๋์ด ์์ ํ ๋ค์ด๋๋ ํ ๋ฒ์ ํ ์นธ ์ด๋ ํ ๋ค์ด๋๊ฐ ํ ์นธ ์ด๋ํ ๋๋ง๋ค ๋ชจ๋๋ ๋ค์๊ณผ ๊ฐ์ด ์ผ์ ํ ๋น์จ๋ก ํฉ๋ fla ๋ชจ๋๊ฐ ์ด๋ฏธ ์๋ ์นธ์ผ๋ก ๋ชจ๋๊ฐ ์ด๋ํ๋ฉด, ๋ชจ๋์ ์์ ๋ํด์ง ํ ๋ค์ด๋๋ (1, 1)๊น์ง ์ด๋ํ ๋ค ์๋ฉธ ๋ชจ๋๊ฐ ๊ฒฉ์์ ๋ฐ์ผ๋ก ์ด๋ํ ์๋ ์๋ค ํ ๋ค์ด๋๊ฐ ์๋ฉธ๋์์ ๋, ๊ฒฉ์์ ๋ฐ์ผ๋ก ๋๊ฐ ๋ชจ๋์ ์ ์ฒซ์งธ ์ค์ ๊ฒฉ์์ ํฌ๊ธฐ N ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ ๊ฒฉ์์ ๊ฐ ์นธ์ ์๋ ๋ชจ๋ r๋ฒ์งธ ์ค์์ c๋ฒ์งธ ์ฃผ์ด์ง๋ ์ ์๋ A[r][c] # ์ฒซ์งธ ์ค์ ๊ฒฉ์์ ํฌ๊ธฐ N # ๋์งธ ์ค๋ถํฐ..
(์ฝ๋๋ ์ ์๊ถ์ ๊ณต์ ์๋ฉ๋๋น!!) ๐ฅ ์ค๋งํธ ํ๋ถ ๋ง๋ค๊ธฐ ๐ ์๋ฌผ ์ฌ๋ฐฐ์ฉ LED : ์ผ์กฐ๋์ด ๋ถ์กฑํ ์ค๋ด์์ ๊ดํฉ์ฑ์ ์ด์ง์ํค๊ณ ์๋ฌผ ์์ฅ ๋์ : ์๋ฌผ ์์ฅ์ ์ ์ตํ ํ์ฅ์ ๋ฐ์์ํค๋๋ก ์ฒญ์ ํ๋๊ณผ ์ ์ ํ๋์ด ์ ์ ํ๊ฒ ์กฐํฉ : ์๋ฌผ ์ฌ๋ฐฐ์ฉ LED ์ ์ดํ๊ธฐ ์ํด ๋ฆด๋ ์ด๊ฐ ํจ๊ป ๊ตฌ์ฑ ๐ ๋ฆด๋ ์ด : ์ค์์น์ ์ผ์ข : ์ ๊ธฐ ๊ธฐ๊ณ์ ๋ฆด๋ ์ด๋ ์ ๊ธฐ๊ฐ ํ๋ฅด๋ฉด ์์์ด ๋์ด ์ค์์น๋ฅผ ๋์ด ๋น๊ฒจ ์ค์์น๊ฐ ๋ซํ : ์ ๊ธฐ๊ฐ ํ๋ฅด์ง ์์ผ๋ฉด ์ด๋ฆผ : ์ฝ์ผ์ ์ด์ฉํ ์ ์์์ ์๋ฆฌ๋ก ๋์ : ์๋์ด๋ ธ์์ DATA๋ก ์ ํธ๋ฅผ ์ฃผ์ด ๋ฆด๋ ์ด๋ฅผ ์ด๊ณ ๋ซ์ ๐ฅ ์๋ฌผ ์์ฅ LED ํ์ฉํ๊ธฐ ๐ฅ ๋ธ๋ฃจํฌ์ค๋ก ์ ์ดํ๋ ์๋ฌผ ์์ฅ ์กฐ๋ช ๐ฅ ์ค๋งํธ ํ๋ถ ์์ฑํ๊ธฐ : ์กฐ๋์ผ์, ์ ํญ, ์์ฅ LED, ๋ฆด๋ ์ด, ๋ธ๋ฃจํฌ์ค ๋ชจ๋, ํ ์ ์๋ถ ์ผ์, ์ํฐ ํ..
(์ฝ๋๋ ์ ์๊ถ์ ๊ณต์ ์๋ฉ๋๋น!!) ๐ฅ ๋ธ๋ฃจํฌ์ค ์กฐ๋ช ์ฅ์น ์ ์ดํ๊ธฐ : ๋ธ๋ฃจํฌ์ค ํต์ ์ผ๋ก ์๋์ด๋ ธ๋ก ๋ช ๋ นํ๋ฉด ์๋์ด๋ ธ๋ LED ์ ์ดํจ์ผ๋ก์จ ์กฐ๋ช ์ฅ์น ์์ฑ 1) ๋ธ๋ฃจํฌ์ค ์ ์ด ์ฑ์ ๋ธ๋ฃจํฌ์ค ๋ชจ๋๋ก ๋ช ๋ น ๋ฌธ์ ์ ์ก 2) ๋ธ๋ฃจํฌ์ค ๋ชจ๋์ ์๋์ด๋ ธ๋ก ๋ช ๋ น ๋ฌธ์ ์ ๋ฌ 3) ์๋์ด๋ ธ๋ ๋ธ๋ฃจํฌ์ค ๋ชจ๋๋ก๋ถํฐ ์๋ฆฌ์ผ ํต์ ์ผ๋ก ๋ช ๋ น ๋ฌธ์ ์ ๋ฌ๋ฐ์ 4) ์๋์ด๋ ผ๋ ์์ ๋ ๋ช ๋ น ๋ฌธ์์ ๋ฐ๋ผ ์ฐ๊ฒฐ๋ LED ์ ์ด ๐ ๋ค์ค ํฝ์ LED : ์นฉ์ด ๋ด์ฅ๋ LED : ์คํฌ๋ฆฝ, ๋ฐ, ์ํ ๋ฑ ๋ค์ํ ํํ : 5V, GND, DATA 3๊ฐ์ ํ ์ด๋ค์ง : Adafruit Neopixel ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น ํ์ ๐ฅ ๋ธ๋ฃจํฌ์ค ํต์ ์ผ๋ก ์ผ์ ๋ฐ์ดํฐ ์กฐํํ๊ธฐ : ์๋์ด๋ ธ์์ ์ธก์ ํ ์ผ์ ๋ฐ์ดํฐ๋ฅผ ๋ธ๋ฃจํฌ์ค ํต์ ์ ํตํด ์ ์ก 1) ๋ธ๋ฃจํฌ์ค ์ ์ด ์ฑ..