๋์ด๋ : ๊ณจ๋ 4 ๊ฑธ๋ฆฐ ์๊ฐ : 1์๊ฐ ๋ฐ ์ด์ ๋ฌธ์ ๋ฌธ์ ๋ฐ๋ก๊ฐ๊ธฐ ํ์ด ์ฐ์ ์์ ํ์์ผ๋ก ํด๋น ๋ฌธ์ ๋ฅผ ์๊ฐํด๋ณธ๋ค. ์์ ํ์์ผ๋ก ๊ตฌํํ๋ค๋ฉด dfs๋ฅผ ์ฌ์ฉํด์ ์ฌ๊ท๋ก ๊ตฌํํ ๊ฒ์ด๋ค. ์ฌ๊ท์ ๋งค๊ฐ๋ณ์(๋ฐ๋ ์ ๋ณด)๋ ํ์ฌ ์์น์ผ ๊ฒ์ด๊ณ , ๋ด๋ณด๋ด๋ ์ ๋ณด๋ ํ์ฌ ์์น์์ ๋ง์ง๋ง๊น์ง์ ๊ฒฝ๋ก์ ์์ผ ๊ฒ์ด๋ค. (0,0)์ ์ฒ์์ผ๋ก ์ฌ๊ทํจ์์ ๋๊ธฐ๋ฉด (0,0)์์ ๋๊น์ง์ ๊ฒฝ๋ก์ ์์ด๋ฏ๋ก ์ฐ๋ฆฌ๊ฐ ์ํ๋ ๋ต์ด ๋์จ๋ค. ์ฌ๊ท๋ ์, ์ค๋ฅธ์ชฝ, ์๋, ์ผ์ชฝ์ผ๋ก ์ ํ ๋ถ๋ถ์ผ๋ก ์ฎ๊ฒจ๊ฐ๋ฉฐ ํด๋น ์ฅ์์ ๊ฒฝ๋ก์ ์๋ฅผ ํ์ฌ ์ฅ์์ ๊ฒฝ๋ก์ ์์ ๋ํ๋ ๋ฐฉ์์ผ๋ก ์งํ๋๋ค. ์ด ๋, ์ฅ์๋ ๋งต ์์ ์์ด์ผํ๋ค. ์ด ๋, ๋ด๋ฆฌ๋ง๊ธธ๋ก๋ง ๊ฐ ์ ์์ผ๋ฏ๋ก ํ์ฌ๋ณด๋ค ๋ ๋์ ์๋ฅผ ๊ฐ์ง ์ฅ์๋ ์ ์ธ์ด๋ค. ์ด๋ ๊ฒ ๊ตฌ์ฑํ๋ฉด ๊ฐ๋ ๊ณณ์ ๋ ๊ฐ๋ ๊ฒฝ์ฐ๊ฐ ์๊ธฐ..
๋์ด๋ : ๊ณจ๋ 5 ๊ฑธ๋ฆฐ ์๊ฐ : 1์๊ฐ ๋ฐ ์ด์ ๋ฌธ์ ๋ฌธ์ ๋ฐ๋ก๊ฐ๊ธฐ ์ค๋ต ์ฒ์์ ์์ ํ์์ผ๋ก ํ๋ ์ต๋ํ ์กฐํฉ์ ๋ฒ์๋ฅผ ์ค์ฌ์ ๊ตฌํํด๋ณด์๋ค. ํ์ง๋ง, ์๊ฐ ์ด๊ณผ๋ก ์คํจ..! #include #include #include #include using namespace std; // 6์ 4๋ถ ์์ => 6์ 42๋ถ ์ค๋จ, 11์ 12๋ถ ์์ => // N > K; for (int i = 0; i > w >> v; vec.push_back(make_pair(w, v)); } // ๋ฌด๊ฒ ์ ์ ๋ ฌ sort(vec.begin(), vec.end(), compare); // ๋ฌด๊ฒ๋ ๊ฐ์๋ฐ ๊ฐ์น๊ฐ ์์ ๊ฒ์ ์์ ๊ธฐ for (int i = 1; i < vec.size(..
๋์ด๋ : ๊ณจ๋ 3 ๊ฑธ๋ฆฐ ์๊ฐ : 50๋ถ ๋ฌธ์ ๋ฌธ์ ๋ฐ๋ก๊ฐ๊ธฐ ํ์ด ์ฒ์์ ํ์ด๋ฅผ ์ด์ํ๊ฒ ์๊ฐํด์ O(n^3)์ ์์ ํ์ ํน์ DP๋ฅผ ์ฌ์ฉํ๋ ๋ฒ์ ์๊ฐํ๊ณ ์์๋ค. ๊ทธ๋ฌ๋ค๊ฐ ์๊ฐ์ ๋ค์ ํด๋ณด๋ ์ฝ๊ฒ ํ ์ ์๋ ๋ฐฉ๋ฒ์ด ์์ด 20๋ถ๋ง์ ํ๊ฒ ๋์๋ค. ์ญ์ ์ฒ์์ ํ์ด๋ฅผ ์ฃผ์์ผ๋ก ์ญ ์ ์ด๋ณธ ํ ์์ ๋ฅผ ํ ์คํธ ํด๋ณด๊ณ ์ํํ๋ ๊ฒ์ด ์ ์ผ ์ ํํ๊ณ ์๋ง์ ๋ฐฉ๋ฒ์ธ ๋ฏ ํ๋ค. ์ ๋ ฅ์ ๋ฒ์๋ 10^3๋ก ๊ทธ๋ค์ง ๋์ ํธ์ ์๋์์ง๋ง, ์์ ํ์ ์ O(n^3)์ด ๊ฑธ๋ฆฌ๋ฏ๋ก ์ถฉ๋ถํ ์๊ฐ์ด๊ณผ๊ฐ ๋์ฌ ์ ์๋ ๋ฒ์์๋ค. ๋ํ ๊ฐ ์ซ์์ ๋ฒ์๋ ์ต๋ 10^3์ด๋ฏ๋ก ์ซ์๋ฅผ ํ๋์ฉ ๋ด๋ ค๊ฐ๋ฉฐ / ์ฌ๋ ค๊ฐ๋ฉฐ ํธ๋ ์์ ํ์ ๋ํ ๋ถ๊ฐ๋ฅํ๋ค. ์์ ์ ํํธ๋ฅผ ๋ณด๋ ์ฐ์์ ์ด์ง ์์ ์์ด์ ํ๋ฆ๋ ๊ฐ๋ฅํ๊ณ , ๊ทธ๋ ๋ค๋ฉด ๊ฐ ์ซ์๊ฐ ๋ณด์ ํ๊ณ ์๋ ma..
ํฉ์น ํ์ ์๊ธ ๋์ด๋ : โ โ โ โโ ๊ฑธ๋ฆฐ ์๊ฐ : ๋ชป ํ์์ ๋ฌธ์ ํฉ์น ํ์ ์๊ธ ๋งํฌ ํด์ค ๊ทธ๋ํ ์ต๋จ ๊ฒฝ๋ก ์๊ณ ๋ฆฌ์ฆ dijkstra๋ floyd-warshal ์๊ณ ๋ฆฌ์ฆ ์ด์ฉ ํ๋ก์ด๋ ์์ฌ ์๊ณ ๋ฆฌ์ฆ ๋ชจ๋ ์ ์ => ๋ชจ๋ ์ ์ ์ต๋จ ๊ฒฝ๋ก ๊ตฌํ๊ธฐ d[i][j] = i๋ถํฐ j๊น์ง์ ์ต์ ํ์ ์๊ธ min(d[s][k]+d[k][a]+d[k][b])๋ฅผ ๊ตฌํ๋ฉด ๋จ ๋ค์ต์คํธ๋ผ ์๊ณ ๋ฆฌ์ฆ ํ ์ ์ => ๋ชจ๋ ์ ์ ์ต๋จ ๊ฒฝ๋ก ๊ตฌํ๊ธฐ ๋ฐฐ์ด(dist)๊ณผ ์ฐ์ ์์ ํ(qp)๋ฅผ ์ด์ฉํด์ ์ฒซ ์ ์ ๋ถํฐ ๊ฐ ๋ ธ๋๊น์ง์ ๊ฑฐ๋ฆฌ๋ฅผ ๋ฐฐ์ด์ ์ ๋ฐ์ดํธํ๋ ๋ฐฉ์ ์ฐ์ ์์ ํ์ ๋ค์ ๊ฐ ์ ์๋ ๋ ธ๋๋ค์ ๋ฃ์ผ๋ฉด์ ํด๋น ๊ฑฐ๋ฆฌ๋ฅผ dist ๋ฐฐ์ด์์ ๊ฐฑ์ ํ๋ ๋ฐฉ์ a, b ๊ฐ๊ฐ์ ์ต๋จ ๊ฑฐ๋ฆฌ ๋น์ฉ๊ณผ ํน์ ์ง์ ๊น์ง์ ์ต๋จ ๊ฑฐ๋ฆฌ ๋น์ฉ ์ค ๊ฐ์ฅ ์์ ๊ฒ์ ..
๋ฉ๋ด ๋ฆฌ๋ด์ผ ๋์ด๋ : โ โ โโโ ๊ฑธ๋ฆฐ ์๊ฐ : 50๋ถ ๋ฌธ์ ๋ฉ๋ด ๋ฆฌ๋ด์ผ ๋ฌธ์ ๋ฐ๋ก๊ฐ๊ธฐ ๋ฌธ์ ์ค๋ช ๋ ์คํ ๋์ ์ด์ํ๋ ์ค์นดํผ๋ ์ฝ๋ก๋19๋ก ์ธํ ๋ถ๊ฒฝ๊ธฐ๋ฅผ ๊ทน๋ณตํ๊ณ ์ ๋ฉ๋ด๋ฅผ ์๋ก ๊ตฌ์ฑํ๋ ค๊ณ ๊ณ ๋ฏผํ๊ณ ์์ต๋๋ค. ๊ธฐ์กด์๋ ๋จํ์ผ๋ก๋ง ์ ๊ณตํ๋ ๋ฉ๋ด๋ฅผ ์กฐํฉํด์ ์ฝ์ค์๋ฆฌ ํํ๋ก ์ฌ๊ตฌ์ฑํด์ ์๋ก์ด ๋ฉ๋ด๋ฅผ ์ ๊ณตํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ด๋ค ๋จํ๋ฉ๋ด๋ค์ ์กฐํฉํด์ ์ฝ์ค์๋ฆฌ ๋ฉ๋ด๋ก ๊ตฌ์ฑํ๋ฉด ์ข์ ์ง ๊ณ ๋ฏผํ๋ ์ค์นดํผ๋ ์ด์ ์ ๊ฐ ์๋๋ค์ด ์ฃผ๋ฌธํ ๋ ๊ฐ์ฅ ๋ง์ด ํจ๊ป ์ฃผ๋ฌธํ ๋จํ๋ฉ๋ด๋ค์ ์ฝ์ค์๋ฆฌ ๋ฉ๋ด๋ก ๊ตฌ์ฑํ๊ธฐ๋ก ํ์ต๋๋ค. ๋จ, ์ฝ์ค์๋ฆฌ ๋ฉ๋ด๋ ์ต์ 2๊ฐ์ง ์ด์์ ๋จํ๋ฉ๋ด๋ก ๊ตฌ์ฑํ๋ ค๊ณ ํฉ๋๋ค. ๋ํ, ์ต์ 2๋ช ์ด์์ ์๋์ผ๋ก๋ถํฐ ์ฃผ๋ฌธ๋ ๋จํ๋ฉ๋ด ์กฐํฉ์ ๋ํด์๋ง ์ฝ์ค์๋ฆฌ ๋ฉ๋ด ํ๋ณด์ ํฌํจํ๊ธฐ๋ก ํ์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์๋ 6๋ช ์ด ์ฃผ..
์ ๊ท ์์ด๋ ์ถ์ฒ ๋์ด๋ : โ โโโโ ๊ฑธ๋ฆฐ ์๊ฐ : 30๋ถ => ๋ฐ์ฑ! ๋ฌธ์ ์ ๊ท ์์ด๋ ์ถ์ฒ ๋ฌธ์ ๋ฐ๋ก๊ฐ๊ธฐ ๋ฌธ์ ์ค๋ช ์นด์นด์ค์ ์ ์ฌํ ์ ์ ๊ฐ๋ฐ์ ๋ค์ค๋ ์นด์นด์ค๊ณ์ ๊ฐ๋ฐํ์ ๋ฐฐ์น๋์ด, ์นด์นด์ค ์๋น์ค์ ๊ฐ์ ํ๋ ์ ์ ๋ค์ ์์ด๋๋ฅผ ์์ฑํ๋ ์ ๋ฌด๋ฅผ ๋ด๋นํ๊ฒ ๋์์ต๋๋ค. ๋ค์ค์๊ฒ ์ฃผ์ด์ง ์ฒซ ์ ๋ฌด๋ ์๋ก ๊ฐ์ ํ๋ ์ ์ ๋ค์ด ์นด์นด์ค ์์ด๋ ๊ท์น์ ๋ง์ง ์๋ ์์ด๋๋ฅผ ์ ๋ ฅํ์ ๋, ์ ๋ ฅ๋ ์์ด๋์ ์ ์ฌํ๋ฉด์ ๊ท์น์ ๋ง๋ ์์ด๋๋ฅผ ์ถ์ฒํด์ฃผ๋ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํ๋ ๊ฒ์ ๋๋ค. ๋ค์์ ์นด์นด์ค ์์ด๋์ ๊ท์น์ ๋๋ค. ์์ด๋์ ๊ธธ์ด๋ 3์ ์ด์ 15์ ์ดํ์ฌ์ผ ํฉ๋๋ค. ์์ด๋๋ ์ํ๋ฒณ ์๋ฌธ์, ์ซ์, ๋นผ๊ธฐ(-), ๋ฐ์ค(_), ๋ง์นจํ(.) ๋ฌธ์๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋จ, ๋ง์นจํ(.)๋ ์ฒ์๊ณผ ๋์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ๋ํ ์ฐ์์ผ๋ก ..
๋งค์นญ ์ ์ ๊ฑธ๋ฆฐ ์๊ฐ : 3์๊ฐ ์ด์ ๋ฌธ์ ๋์ด๋ โ โ โ โโ ๋ฌธ์ ์ค๋ช ํ๋ ์ฆ ๋ํ๊ต ์กฐ๊ต์๋ ์ ์ด์ง๋ ํ๋๋ ์ผ๋ง ์ํค๋ ๋ค์ค ํ๊ณผ์ฅ๋์ ๋ง์์์ ๋ฒ์ด๋, ์นด์นด์ค์ ์ ์ฌํ๊ฒ ๋์๋ค. ํ์์ ๊ด์ฌ์์ดํ๋ ๊ฒ์์ ๋ง์นจ ๊ฒฐ์์ด ๋ฐ์ํ์ฌ, ๊ฒ์๊ฐ๋ฐํ์ ํธ์ ๋ ์ ์์๊ณ , ๋๋ง์ ์ฒซ ํ๋ก์ ํธ๋ฅผ ๋งก๊ฒ ๋์๋ค. ๊ทธ ํ๋ก์ ํธ๋ ๊ฒ์์ด์ ๊ฐ์ฅ ์ ๋ง๋ ์นํ์ด์ง๋ฅผ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด ์๋์ ๊ฐ์ ๊ท์น์ผ๋ก ๊ฒ์์ด์ ๋ํ ์นํ์ด์ง์ ๋งค์นญ์ ์๋ฅผ ๊ณ์ฐ ํ๋ ๊ฒ์ด์๋ค. ํ ์นํ์ด์ง์ ๋ํด์ ๊ธฐ๋ณธ์ ์, ์ธ๋ถ ๋งํฌ ์, ๋งํฌ์ ์, ๊ทธ๋ฆฌ๊ณ ๋งค์นญ์ ์๋ฅผ ๊ตฌํ ์ ์๋ค. ํ ์นํ์ด์ง์ ๊ธฐ๋ณธ์ ์๋ ํด๋น ์นํ์ด์ง์ ํ ์คํธ ์ค, ๊ฒ์์ด๊ฐ ๋ฑ์ฅํ๋ ํ์์ด๋ค. (๋์๋ฌธ์ ๋ฌด์) ํ ์นํ์ด์ง์ ์ธ๋ถ ๋งํฌ ์๋ ํด๋น ์นํ์ด์ง์์ ๋ค๋ฅธ ์ธ๋ถ ํ์ด์ง๋ก ์ฐ๊ฒฐ๋ ๋ง..
๊ธธ ์ฐพ๊ธฐ ๊ฒ์ โ โ โ โโ LEVEL 3 ๋ฌธ์ ๊ธธ ์ฐพ๊ธฐ ๊ฒ์ ๋ฌธ์ ๋งํฌ ๋ฌธ์ ์ค๋ช ์ ๋ฌด๋ก ์น์งํ ๋ผ์ด์ธ์ ๊ธฐ๋ถ์ด ๋๋ฌด ์ข์ ํ๋ ์ฆ๋ฅผ ์ด๋๊ณ ํน๋ณ ํด๊ฐ๋ฅผ ๊ฐ๊ธฐ๋ก ํ๋ค. ๋ด์น๊น์ ์ฌํ ๊ณํ๊น์ง ๊ตฌ์ํ๋ ๋ผ์ด์ธ์ ์ฌ๋ฏธ์๋ ๊ฒ์์ ์๊ฐํด๋๊ณ ์ญ์ ์ ๋ฌด๋ก ์น์งํ ๋งํ ์ธ์ฌ๋ผ๊ณ ์ค์ค๋ก์๊ฒ ๊ฐํํ๋ค. ๋ผ์ด์ธ์ด ๊ตฌ์ํ(๊ทธ๋ฆฌ๊ณ ์๋ง๋ ๋ผ์ด์ธ๋ง ์ฆ๊ฑฐ์ธ๋งํ) ๊ฒ์์, ์นด์นด์ค ํ๋ ์ฆ๋ฅผ ๋ ํ์ผ๋ก ๋๋๊ณ , ๊ฐ ํ์ด ๊ฐ์ ๊ณณ์ ๋ค๋ฅธ ์์๋ก ๋ฐฉ๋ฌธํ๋๋ก ํด์ ๋จผ์ ์ํ๋ฅผ ๋ง์น ํ์ด ์น๋ฆฌํ๋ ๊ฒ์ด๋ค. ๊ทธ๋ฅ ์ง๋๋ฅผ ์ฃผ๊ณ ๊ฒ์์ ์์ํ๋ฉด ์ฌ๋ฏธ๊ฐ ๋ํด์ง๋ฏ๋ก, ๋ผ์ด์ธ์ ๋ฐฉ๋ฌธํ ๊ณณ์ 2์ฐจ์ ์ขํ ๊ฐ์ ๊ตฌํ๊ณ ๊ฐ ์ฅ์๋ฅผ ์ด์งํธ๋ฆฌ์ ๋ ธ๋๊ฐ ๋๋๋ก ๊ตฌ์ฑํ ํ, ์ํ ๋ฐฉ๋ฒ์ ํํธ๋ก ์ฃผ์ด ๊ฐ ํ์ด ์ค์ค๋ก ๊ฒฝ๋ก๋ฅผ ์ฐพ๋๋ก ํ ๊ณํ์ด๋ค. ๋ผ์ด์ธ์ ์๋์ ๊ฐ์ ..
Comment