์ฉ๊ฐํ ์ฉ์ฌ ๋นํ๋ก๋ ๋์ ํ์คํธ์ ๋์ ํ๋ค.
๋์ ์ ๋ฒ๊น์ง ๋ฒํธ๊ฐ ๋ถ์ ๊ฐ์ ๋ฐฉ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ๋ฒ ๋ฐฉ์ ์ ์ธํ ๊ฐ ๋ฐฉ์ ์ ํํ ํ๋์ ์์ ๋ฐฉ์ ๊ฐ์ง๋ค. ๋ฒ ๋ฐฉ()์ ์์ ๋ฐฉ์ ๋ฒ ๋ฐฉ์ด๋ฉฐ, ๋ฐ๋๋ก ๋ฒ ๋ฐฉ์ ๋ฒ ๋ฐฉ์ ํ์ ๋ฐฉ์ด๋ค. ํ ๋ฐฉ์ ์ฌ๋ฌ ๊ฐ์ ํ์ ๋ฐฉ์ ๊ฐ์ง ์ ์์ผ๋ฉฐ, ๋ฒ ๋ฐฉ์ ์์ ๋ฐฉ์ ๊ฐ์ง์ง ์๋๋ค.
๋นํ๋ก๋ ๋ค์ ๊ท์น์ ๋ฐ๋ผ ๋ฐฉ์ ํ์ฌํ๋ค.
- ์ฒ์์๋ ๋ฐ๋์ ๋ฒ ๋ฐฉ์ ํ์ฌํ๋ค.
- ์ดํ์๋ ์์ง ํ์ฌํ์ง ์์ ๋ฐฉ ์ค์์, ๊ทธ ์์ ๋ฐฉ์ด ์ด๋ฏธ ํ์ฌ๋ ๋ฐฉ์ ํ๋ ๊ณจ๋ผ ํ์ฌํ๋ค.
๋์ ์ ๋ฒ ๋ฐฉ์ ๋์ด๋ ์ ๋ ๋ฒจ ๋ฅผ ๊ฐ์ง๋ค. ๊ฐ ๋ฐฉ์ ๋ ๋ฒจ ๋ ๋ณํ์ง ์๋๋ค. ๋์ด๋ ๋ ๋ฒ ๋ฐฉ์์ ์ถ๋ฐํ์ฌ ํ์ ๋ฐฉ ๋ฐฉํฅ์ผ๋ก ๋ฒ ์ด์ ์ด๋ํด ๋๋ฌํ ์ ์๋ ๋ฐฉ๋ค ์ค, ์ด๋ฏธ ํ์ฌํ ๋ฐฉ์ ๊ฐ์๋ก ์ ์๋๋ค. ๋ฐ๋ผ์ ์์ง ํ์ฌํ์ง ์์ ๋ฐฉ์ ๋์ด๋๋ ์ด๊ณ , ๋ฒ ๋ฐฉ์ ๋์ด๋๋ ํญ์ ์ง๊ธ๊น์ง ํ์ฌํ ๋ฐฉ์ ๊ฐ์์ด๋ค.
์๋ก์ด ๋ฐฉ์ ํ์ฌํ ๋๋ง๋ค ๋์ ์ ์๋ ๋ชจ๋ ๋ฐฉ์ ๋ค์ ๊ท์น์ด ์ ์ฉ๋๋ค. ์ด์ ๋ฐ๋ผ ์ผ๋ถ ๋ฐฉ์ ๋ชฌ์คํฐ๊ฐ ์ถ๊ฐ๋ ์ ์๋ค. ์ด๋ฏธ ํ์ฌํ ๋ฐฉ์์ ๋ชฌ์คํฐ๊ฐ ์ถ๊ฐ๋ ์ ์์์ ์ ์ํ๋ผ.
- ์ด๋ฉด, ๋ฒ ๋ฐฉ์๋ ๋ง๋ฆฌ์ ๋ชฌ์คํฐ๊ฐ ์๋ก ์ถ๊ฐ๋๋ค.
- ์ด๋ฉด, ๋ฒ ๋ฐฉ์๋ ๋ชฌ์คํฐ๊ฐ ์ถ๊ฐ๋์ง ์๋๋ค.
- ๋์ด๋๊ฐ ์ธ ๋ฐฉ(์์ง ํ์ฌํ์ง ์์ ๋ฐฉ)์๋ ๋ชฌ์คํฐ๊ฐ ์ถ๊ฐ๋์ง ์๋๋ค.
๋นํ๋ก๋ ์ธ์์ ์ต์ํํ๊ณ ์ถ๊ธฐ ๋๋ฌธ์, ์๋ก์ด ๋ฐฉ์ ํ์ฌํ ๋๋ ํ์ฌ ์งํ ๋์ ์ ์ฒด์ ์๋ก ์ถ๊ฐ๋๋ ๋ชฌ์คํฐ ์๊ฐ ์ต์๊ฐ ๋๋ ๋ฐฉ์ ์ ํํ๋ค. ๋ง์ฝ ๊ทธ๋ฐ ๋ฐฉ์ด ์ฌ๋ฌ ๊ฐ๋ผ๋ฉด, ๋ฒํธ๊ฐ ๊ฐ์ฅ ์์ ๋ฐฉ์ ์ ํํ๋ค.
ํ์ง๋ง ๋นํ๋ก๋ ๋ ์์ง๋ง ๋ ๋ชจ๋ฅธ๋ค. ์ด๋ฅผ ์ํด ๊ทธ๋ ํ์ฌํ ์ ์๋ ๋ฐฉ ์ค ํ๋๋ฅผ ์ ํํ์ฌ ์กฐ์ฌํ๊ณ , ๊ทธ ๋ฐฉ์ ๋ ๋ฒจ ๋ฅผ ์ ์ ์๋ค.
๋นํ๋ก๊ฐ ๋์ ํ์คํธ๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ๋ง์น ์ ์๊ฒ ๋์์ฃผ์.
Implementation Details
ํจ์ ๊ตฌํ์ ์์ #include "brave.h" ๋ฅผ ํตํด "brave.h" ํค๋ ํ์ผ์ ํฌํจํด์ผ ํ๋ค.
๋น์ ์ ๋ค์ ํจ์๋ฅผ ๊ตฌํํด์ผ ํ๋ค.
void bitaroTravel(int N, std::vector<int> P)
- : ๋ฐฉ์ ์
- : ๊ฐ ๋ฐฉ์ ์์ ๋ฐฉ์ ๋ํ๋ด๋ ๊ธธ์ด ์ ๋ฐฐ์ด ์ผ๋ก ์ ์๋๋ค
- ์ด ํจ์๋ ํ๋์ ํ ์คํธ ์ผ์ด์ค์ ๋ํด ๋จ ํ ๋ฒ๋ง ํธ์ถ๋๋ค.
- ์ด ํจ์ ์์์ ์๋์ ๋ ํจ์๋ฅผ ํธ์ถํด ๋นํ๋ก์ ํํ์ ์๋ฎฌ๋ ์ด์ ํด์ผ ํ๋ค.
int explore(int i)
- : ์๋กญ๊ฒ ํ์ฌํ ๋ฐฉ์ ๋ฒํธ ()
- ์ฒซ ๋ฒ์งธ ํธ์ถ์์๋ ๋ฐ๋์ ๋ฒ ๋ฐฉ์ ํ์ฌํด์ผ ํ๋ค.
- ์ดํ ํธ์ถ์์๋ ๋ฒ ๋ฐฉ์ด ์์ง ํ์ฌ๋์ง ์์๊ณ , ๋ฒ ๋ฐฉ์ด ์ด๋ฏธ ํ์ฌ๋ ์ํ์ฌ์ผ ํ๋ค.
- ์กฐ๊ฑด์ ๋ง์ง ์์ผ๋ฉด ์ ๋ฐํํ๋ค. (ํ์ฌ ๊ท์น ์๋ฐ ์ฌ๋ถ์๋ ๋ณ๊ฐ์ด๋ค.)
- ๊ทธ ์ธ์ ๊ฒฝ์ฐ ์ ๋ฐํํ๋ค.
int investigate(int i)
- : ์กฐ์ฌํ ๋ฐฉ ๋ฒํธ ()
- ์ด๋ ๋ฒ ๋ฐฉ์ ํ์ฌ๋์ง ์์๊ณ , ๋ฒ ๋ฐฉ์ ํ์ฌ๋ ์ํ์ฌ์ผ ํ๋ค.
- ๋ชจ๋ ๋ฐฉ์ ๋จ ํ ๋ฒ๋ง ์กฐ์ฌํ ์ ์๋ค. ์ฆ, ๊ฐ์ ๋ฐฉ์ ์ฌ๋ฌ ๋ฒ ์กฐ์ฌํ ์ ์๋ค.
- ์กฐ๊ฑด์ ๋ง์กฑํ์ง ์์ผ๋ฉด ์ ๋ฐํํ๋ค.
- ๊ทธ ์ธ์ ๊ฒฝ์ฐ ์ ๋ฐํํ๋ค.
explore ํจ์๋ฅผ ์ด ๋ฒ ํธ์ถํด ๋ชจ๋ ๋ฐฉ์ ํํํ ๋ค์๋ bitaroTravel ํจ์๋ฅผ ์ข ๋ฃํด์ผ ํ๋ค.
์ข ๋ฃ ํ, ๋ฐฉ์ ํ์ฌํ ์์๊ฐ ๋ฌธ์ ์ ์กฐ๊ฑด์ ๋ง์ผ๋ฉด ๋ง์์ต๋๋ค!! ํ์ ์, ๊ทธ๋ ์ง ์์ผ๋ฉด ํ๋ ธ์ต๋๋ค ํ์ ์ ๋ฐ๋๋ค.
์ ์ถํ๋ ์์ค ์ฝ๋์ ์ด๋ ๋ถ๋ถ์์๋ ์ ์ถ๋ ฅ ํจ์๋ฅผ ์คํํด์๋ ์ ๋๋ค.
Constraints
- .
- ().
- .
- ().