
๋์ด๋ : ๊ณจ๋ 3 ๊ฑธ๋ฆฐ ์๊ฐ : 45๋ถ ๋ฌธ์ ํํฐ ๋ฌธ์ ๋ฐ๋ก๊ฐ๊ธฐ ๋ฌธ์ N๊ฐ์ ์ซ์๋ก ๊ตฌ๋ถ๋ ๊ฐ๊ฐ์ ๋ง์์ ํ ๋ช ์ ํ์์ด ์ด๊ณ ์๋ค. ์ด๋ ๋ ์ด N๋ช ์ ํ์์ด X (1 ≤ X ≤ N)๋ฒ ๋ง์์ ๋ชจ์ฌ์ ํํฐ๋ฅผ ๋ฒ์ด๊ธฐ๋ก ํ๋ค. ์ด ๋ง์ ์ฌ์ด์๋ ์ด M๊ฐ์ ๋จ๋ฐฉํฅ ๋๋ก๋ค์ด ์๊ณ i๋ฒ์งธ ๊ธธ์ ์ง๋๋๋ฐ Ti(1 ≤ Ti ≤ 100)์ ์๊ฐ์ ์๋นํ๋ค. ๊ฐ๊ฐ์ ํ์๋ค์ ํํฐ์ ์ฐธ์ํ๊ธฐ ์ํด ๊ฑธ์ด๊ฐ์ ๋ค์ ๊ทธ๋ค์ ๋ง์๋ก ๋์์์ผ ํ๋ค. ํ์ง๋ง ์ด ํ์๋ค์ ์๋ ๊ฒ์๋ฌ์ ์ต๋จ ์๊ฐ์ ์ค๊ณ ๊ฐ๊ธฐ๋ฅผ ์ํ๋ค. ์ด ๋๋ก๋ค์ ๋จ๋ฐฉํฅ์ด๊ธฐ ๋๋ฌธ์ ์๋ง ๊ทธ๋ค์ด ์ค๊ณ ๊ฐ๋ ๊ธธ์ด ๋ค๋ฅผ์ง๋ ๋ชจ๋ฅธ๋ค. N๋ช ์ ํ์๋ค ์ค ์ค๊ณ ๊ฐ๋๋ฐ ๊ฐ์ฅ ๋ง์ ์๊ฐ์ ์๋นํ๋ ํ์์ ๋๊ตฌ์ผ์ง ๊ตฌํ์ฌ๋ผ. ํ์ด ๋ชจ๋ ์ ์์ X๊น์ง์ ์๊ฐ๊ณผ X์์ ๋ชจ๋ ์ ๊น์ง..

๋์ด๋ : ๊ณจ๋ 5 ๊ฑธ๋ฆฐ ์๊ฐ : 30๋ถ ๋ฌธ์ ์ต์๋น์ฉ ๊ตฌํ๊ธฐ ๋ฌธ์ ๋ฐ๋ก๊ฐ๊ธฐ N๊ฐ์ ๋์๊ฐ ์๋ค. ๊ทธ๋ฆฌ๊ณ ํ ๋์์์ ์ถ๋ฐํ์ฌ ๋ค๋ฅธ ๋์์ ๋์ฐฉํ๋ M๊ฐ์ ๋ฒ์ค๊ฐ ์๋ค. ์ฐ๋ฆฌ๋ A๋ฒ์งธ ๋์์์ B๋ฒ์งธ ๋์๊น์ง ๊ฐ๋๋ฐ ๋๋ ๋ฒ์ค ๋น์ฉ์ ์ต์ํ ์ํค๋ ค๊ณ ํ๋ค. A๋ฒ์งธ ๋์์์ B๋ฒ์งธ ๋์๊น์ง ๊ฐ๋๋ฐ ๋๋ ์ต์๋น์ฉ์ ์ถ๋ ฅํ์ฌ๋ผ. ๋์์ ๋ฒํธ๋ 1๋ถํฐ N๊น์ง์ด๋ค. ํ์ด ๋ค์ต์คํธ๋ผ ๊ธฐ๋ณธ ๊ตฌํ์ ์ด์ฉํด์ ํผ๋ค. ๋ค์ต์คํธ๋ผ ๊ฐ๋ ๋ฐ๋ก๊ฐ๊ธฐ ์ฝ๋ #include #include #include using namespace std; int main() { // ์ต์๋น์ฉ ๋ฌธ์ => bfs / ๊ทธ๋ํ ํ์(๋ค์ต์คํธ๋ผ) // N 10^3์ดํ M 10^6 ์ดํ // ์ถ๋ฐ, ๋์ฐฉ, ๋น์ฉ // ๋น์ฉ 10^6 ์ดํ // ๋ง์ง๋ง (์ถ๋ฐ..

๋์ด๋ : ๊ณจ๋ 5 ๊ฑธ๋ฆฐ ์๊ฐ : 1์๊ฐ ๋ฐ ์ด์ (์ค๋ฅ ์ฐพ๊ธฐ) ๋ฌธ์ ์ต๋จ๊ฒฝ๋ก ๋ฌธ์ ๋ฐ๋ก๊ฐ๊ธฐ ํ์ด ๋ค์ต์คํธ๋ผ ๊ธฐ๋ณธ ๊ตฌํ์ ์ด์ฉํด์ ํผ๋ค. ๋ค์ต์คํธ๋ผ ๊ฐ๋ ๋ฐ๋ก๊ฐ๊ธฐ ์ฝ๋ #include #include #include using namespace std; int main() { // ์ ๋ ฅ // v, e๋ 10^5, 10^6์ดํ int V; int E; cin >> V >> E; int start; // ์์ ์ ์ cin >> start; vector edge(V+1, vector(0)); for (int i = 0; i > from >> to >> val; edge[from].push_back(make_pair(to..
Comment