์งํ์ฒ ๋
ธ์ ๋ & ๊ฒฝ๋ก ์กฐํ ๋ฏธ์
- ์งํ์ฒ ์ญ๊ณผ ๋
ธ์ ์ ๊ด๋ฆฌํ๋ ์งํ์ฒ ๋
ธ์ ๋ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ค.
- ๋ฑ๋ก๋ ์งํ์ฒ ๋
ธ์ ๋์์ ๊ฒฝ๋ก๋ฅผ ์กฐํํ๋ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ค.
๐ ์ด๊ธฐ ์ค์ - ๊ณตํต
- ํ๋ก๊ทธ๋จ ์์ ์ ์ญ, ๋
ธ์ , ๊ตฌ๊ฐ ์ ๋ณด๋ฅผ ์ด๊ธฐ ์ค์ ํด์ผ ํ๋ค.
- ๊ฑฐ๋ฆฌ์ ์์ ์๊ฐ์ ์์ ์ ์์ด๋ฉฐ ๋จ์๋ km์ ๋ถ์ ์๋ฏธํ๋ค.
- ์๋์ ์ฌ์ ๋ฑ๋ก ์ ๋ณด๋ก ๋ฐ๋์ ์ด๊ธฐ ์ค์ ์ ํ๋ค.
1. ์งํ์ฒ ์ญ์ผ๋ก ๊ต๋์ญ, ๊ฐ๋จ์ญ, ์ญ์ผ์ญ, ๋จ๋ถํฐ๋ฏธ๋์ญ, ์์ฌ์ญ, ์์ฌ์๋ฏผ์์ฒ์ญ, ๋งค๋ด์ญ์ด ๋ฑ๋ก๋์ด ์๋ค.
2. ์งํ์ฒ ๋
ธ์ ์ผ๋ก 2ํธ์ , 3ํธ์ , ์ ๋ถ๋น์ ์ด ๋ฑ๋ก๋์ด ์๋ค.
3. ๋
ธ์ ์ ์ญ์ด ์๋์ ๊ฐ์ด ๋ฑ๋ก๋์ด ์๋ค.(์ผ์ชฝ ๋์ด ์ํ ์ข
์ )
- 2ํธ์ : ๊ต๋์ญ - ( 2km / 3๋ถ ) - ๊ฐ๋จ์ญ - ( 2km / 3๋ถ ) - ์ญ์ผ์ญ
- 3ํธ์ : ๊ต๋์ญ - ( 3km / 2๋ถ ) - ๋จ๋ถํฐ๋ฏธ๋์ญ - ( 6km / 5๋ถ ) - ์์ฌ์ญ - ( 1km / 1๋ถ ) - ๋งค๋ด์ญ
- ์ ๋ถ๋น์ : ๊ฐ๋จ์ญ - ( 2km / 8๋ถ ) - ์์ฌ์ญ - ( 10km / 3๋ถ ) - ์์ฌ์๋ฏผ์์ฒ์ญ
๐ ๊ธฐ๋ฅ ์๊ตฌ์ฌํญ - ๋
ธ์ ๋
์งํ์ฒ ์ญ ๊ด๋ จ ๊ธฐ๋ฅ
- ์งํ์ฒ ์ญ์ ๋ฑ๋กํ๊ณ ์ญ์ ํ ์ ์๋ค. (๋จ, ๋
ธ์ ์ ๋ฑ๋ก๋ ์ญ์ ์ญ์ ํ ์ ์๋ค)
- ์ค๋ณต๋ ์งํ์ฒ ์ญ ์ด๋ฆ์ด ๋ฑ๋ก๋ ์ ์๋ค.
- ์งํ์ฒ ์ญ ์ด๋ฆ์ 2๊ธ์ ์ด์์ด์ด์ผ ํ๋ค.
- ์งํ์ฒ ์ญ์ ๋ชฉ๋ก์ ์กฐํํ ์ ์๋ค.
์งํ์ฒ ๋
ธ์ ๊ด๋ จ ๊ธฐ๋ฅ
- ์งํ์ฒ ๋
ธ์ ์ ๋ฑ๋กํ๊ณ ์ญ์ ํ ์ ์๋ค.
- ์ค๋ณต๋ ์งํ์ฒ ๋
ธ์ ์ด๋ฆ์ด ๋ฑ๋ก๋ ์ ์๋ค.
- ์งํ์ฒ ๋
ธ์ ์ด๋ฆ์ 2๊ธ์ ์ด์์ด์ด์ผ ํ๋ค.
- ๋
ธ์ ๋ฑ๋ก ์ ์ํ ์ข
์ ์ญ๊ณผ ํํ ์ข
์ ์ญ, ๊ตฌ๊ฐ ๊ฑฐ๋ฆฌ, ์์ ์๊ฐ์ ์
๋ ฅ๋ฐ๋๋ค.
- ์งํ์ฒ ๋
ธ์ ์ ๋ชฉ๋ก์ ์กฐํํ ์ ์๋ค.
์งํ์ฒ ๊ตฌ๊ฐ ์ถ๊ฐ ๊ธฐ๋ฅ
- ํ๋์ ์ญ์ ์ฌ๋ฌ๊ฐ์ ๋
ธ์ ์ ์ถ๊ฐ๋ ์ ์๋ค.
- ์ญ๊ณผ ์ญ ์ฌ์ด์ ์๋ก์ด ์ญ์ด ์ถ๊ฐ ๋ ์ ์๋ค.
- ์ด๋ฏธ ์กด์ฌํ๋ ๊ตฌ๊ฐ์ ๋ฑ๋กํ ์ ์๋ค.
- ๊ต๋ - ๊ฐ๋จ - ์ญ์ผ ๊ตฌ๊ฐ์ด ๋ฑ๋ก๋์ด ์๋ค๋ฉด ๊ต๋ - ์ญ์ผ ๊ตฌ๊ฐ์ ๋ฑ๋กํ ์ ์๋ค.
- ๊ธฐ์กด์ ๊ตฌ๊ฐ ์ฌ์ด์ ์๋ก์ด ๊ตฌ๊ฐ์ ๋ฑ๋กํ ๊ฒฝ์ฐ ๊ตฌ๊ฐ์ ์ด์ด์ค์ผ ํ๋ค.
- ๊ต๋ - ์ญ์ผ ๊ตฌ๊ฐ์ด ๋ฑ๋ก๋์ด ์๋๋ฐ ๊ต๋ - ๊ฐ๋จ ๊ตฌ๊ฐ์ ๋ฑ๋กํ๋ฉด ๊ต๋ - ๊ฐ๋จ - ์ญ์ผ ๊ตฌ๊ฐ์ผ๋ก ์์ ๋์ด์ผ ํ๋ค. ์ฆ ๊ฐ๋จ - ์ญ์ผ ๊ตฌ๊ฐ์ด ์๋์ ์ผ๋ก ๋ฑ๋ก๋๋ค.
- ์์ ๊ฐ์ ์ํฉ์์ ์๋์ผ๋ก ์ถ๊ฐ๋๋ ๊ตฌ๊ฐ(๊ฐ๋จ - ์ญ์ผ)์ ๊ฑฐ๋ฆฌ 2km, ์๊ฐ 3๋ถ์ผ๋ก ๊ณ ์ ๋์ด ์ถ๊ฐ๋๋ค.
- ๋
ธ์ ์์ ๊ฐ๋๊ธธ์ ์๊ธธ ์ ์๋ค.
์งํ์ฒ ๊ตฌ๊ฐ ์ญ์ ๊ธฐ๋ฅ
- ๋
ธ์ ์ ๋ฑ๋ก๋ ์ญ์ ์ ๊ฑฐํ ์ ์๋ค.
- ์ข
์ ์ ์ ๊ฑฐํ ๊ฒฝ์ฐ ๋ค์(๋๋ ์ด์ ) ์ญ์ด ์ข
์ ์ด ๋๋ค.
- ๋
ธ์ ์ ํฌํจ๋ ์ญ์ด ๋๊ฐ ์ดํ์ผ ๋๋ ์ญ์ ์ ๊ฑฐํ ์ ์๋ค.
- ๊ตฌ๊ฐ์ ์ ๊ฑฐํ ๊ฒฝ์ฐ ๊ธฐ์กด์ ๊ฑธ๋ ธ๋ ์์ ์๊ฐ์ ๋ณ๊ฒฝ๋ ๊ตฌ๊ฐ์ ์ ์ฉํ๋ค.
- ๊ต๋ - ( 2km / 3๋ถ ) - ๊ฐ๋จ - ( 2km / 3๋ถ ) - ์ญ์ผ ๊ตฌ๊ฐ์์ ๊ต๋ - ๊ฐ๋จ ๊ตฌ๊ฐ์ ์ญ์ ํ๋ฉด ๊ต๋ - (4km / 6๋ถ) - ์ญ์ผ ๊ตฌ๊ฐ์ผ๋ก ๋ณ๊ฒฝ๋๋ค.
- ์ง์ ์ฐ๊ฒฐ๋ ๊ตฌ๊ฐ์ด ์๋ ๊ฒฝ์ฐ(๊ตฌ๊ฐ ์ฌ์ด์ ๋ค๋ฅธ ์ญ์ด ์กด์ฌํ ๊ฒฝ์ฐ) ์ญ์ ๊ฐ ๋ถ๊ฐ๋ฅํ๋ค.
์งํ์ฒ ๋
ธ์ ์ ๋ฑ๋ก๋ ์ญ ์กฐํ ๊ธฐ๋ฅ
- ๋
ธ์ ์ ์ํ ์ข
์ ๋ถํฐ ํํ ์ข
์ ๊น์ง ์ฐ๊ฒฐ๋ ์์๋๋ก ์ญ ๋ชฉ๋ก์ ์กฐํํ ์ ์๋ค.
๐ ๊ธฐ๋ฅ ์๊ตฌ์ฌํญ - ๊ฒฝ๋ก ์กฐํ
- ์ถ๋ฐ์ญ๊ณผ ๋์ฐฉ์ญ์ ์
๋ ฅ๋ฐ์ ๊ฒฝ๋ก๋ฅผ ์กฐํํ๋ค.
- ๊ฒฝ๋ก ์กฐํ ์ ์ด ๊ฑฐ๋ฆฌ, ์ด ์์ ์๊ฐ๋ ํจ๊ป ์ถ๋ ฅํ๋ค.
- ๊ฒฝ๋ก ์กฐํ ๊ธฐ์ค์
์ต๋จ ๊ฑฐ๋ฆฌ
์ต์ ์๊ฐ
์ด ์๋ค.
- ๊ฒฝ๋ก ์กฐํ ์ ์ถ๋ฐ์ญ๊ณผ ๋์ฐฉ์ญ์ด ๊ฐ์ผ๋ฉด ์๋ฌ๋ฅผ ์ถ๋ ฅํ๋ค.
- ๊ฒฝ๋ก ์กฐํ ์ ์ถ๋ฐ์ญ๊ณผ ๋์ฐฉ์ญ์ด ์ฐ๊ฒฐ๋์ด ์์ง ์์ผ๋ฉด ์๋ฌ๋ฅผ ์ถ๋ ฅํ๋ค.
- ๊ทธ ์ธ ์ ์์ ์ผ๋ก ํ๋ก๊ทธ๋จ์ด ์ํ๋์ง ์์ ๊ฒฝ์ฐ ์๋ฌ๋ฅผ ์ถ๋ ฅํ๋ค.
โ๐ป ์
์ถ๋ ฅ ์๊ตฌ์ฌํญ
ํ๋ก๊ทธ๋๋ฐ ์คํ ๊ฒฐ๊ณผ ์์
๋ฅผ ์ฐธ๊ณ ํ์ฌ ์
์ถ๋ ฅ์ ๊ตฌํํ๋ค.
- ๊ธฐ๋ํ๋ ์ถ๋ ฅ ๊ฒฐ๊ณผ๋
[INFO]
๋ฅผ ๋ถ์ฌ์ ์ถ๋ ฅํ๋ค. ์ถ๋ ฅ๊ฐ์ ํ์์ ์์์ ๋์ผํ๊ฒ ํ๋ค.
- ์๋ฌ ๋ฐ์ ์
[ERROR]
๋ฅผ ๋ถ์ฌ์ ์ถ๋ ฅํ๋ค. (์๋ฌ์ ๋ฌธ๊ตฌ๋ ์์ ๋กญ๊ฒ ์์ฑํ๋ค.)
๐ป ํ๋ก๊ทธ๋๋ฐ ์คํ ๊ฒฐ๊ณผ
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
1
## ์ญ ๊ด๋ฆฌ ํ๋ฉด
1. ์ญ ๋ฑ๋ก
2. ์ญ ์ญ์
3. ์ญ ์กฐํ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
1
## ๋ฑ๋กํ ์ญ ์ด๋ฆ์ ์
๋ ฅํ์ธ์.
์ ์ค์ญ
[INFO] ์งํ์ฒ ์ญ์ด ๋ฑ๋ก๋์์ต๋๋ค.
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
1
## ์ญ ๊ด๋ฆฌ ํ๋ฉด
1. ์ญ ๋ฑ๋ก
2. ์ญ ์ญ์
3. ์ญ ์กฐํ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
3
## ์ญ ๋ชฉ๋ก
[INFO] ๊ต๋์ญ
[INFO] ๊ฐ๋จ์ญ
[INFO] ์ญ์ผ์ญ
[INFO] ๋จ๋ถํฐ๋ฏธ๋์ญ
[INFO] ์์ฌ์ญ
[INFO] ์์ฌ์๋ฏผ์์ฒ์ญ
[INFO] ๋งค๋ด์ญ
[INFO] ์ ์ค์ญ
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
1
## ์ญ ๊ด๋ฆฌ ํ๋ฉด
1. ์ญ ๋ฑ๋ก
2. ์ญ ์ญ์
3. ์ญ ์กฐํ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
2
## ์ญ์ ํ ์ญ ์ด๋ฆ์ ์
๋ ฅํ์ธ์.
์ ์ค์ญ
[INFO] ์งํ์ฒ ์ญ์ด ์ญ์ ๋์์ต๋๋ค.
...
...
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
2
## ๋
ธ์ ๊ด๋ฆฌ ํ๋ฉด
1. ๋
ธ์ ๋ฑ๋ก
2. ๋
ธ์ ์ญ์
3. ๋
ธ์ ์กฐํ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
1
## ๋ฑ๋กํ ๋
ธ์ ์ด๋ฆ์ ์
๋ ฅํ์ธ์.
1ํธ์
## ๋ฑ๋กํ ๋
ธ์ ์ ์ํ ์ข
์ ์ญ ์ด๋ฆ์ ์
๋ ฅํ์ธ์.
๊ฐ๋จ์ญ
## ๋ฑ๋กํ ๋
ธ์ ์ ํํ ์ข
์ ์ญ ์ด๋ฆ์ ์
๋ ฅํ์ธ์.
์ ์ค์ญ
## ๊ตฌ๊ฐ ๊ฑฐ๋ฆฌ(km)๋ฅผ ์
๋ ฅํ์ธ์.
2
## ์์ ์๊ฐ(๋ถ)์ ์
๋ ฅํ์ธ์.
3
[INFO] ์งํ์ฒ ๋
ธ์ ์ด ๋ฑ๋ก๋์์ต๋๋ค.
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
2
## ๋
ธ์ ๊ด๋ฆฌ ํ๋ฉด
1. ๋
ธ์ ๋ฑ๋ก
2. ๋
ธ์ ์ญ์
3. ๋
ธ์ ์กฐํ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
3
## ๋
ธ์ ๋ชฉ๋ก
[INFO] 2ํธ์
[INFO] 3ํธ์
[INFO] ์ ๋ถ๋น์
[INFO] 1ํธ์
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
2
## ๋
ธ์ ๊ด๋ฆฌ ํ๋ฉด
1. ๋
ธ์ ๋ฑ๋ก
2. ๋
ธ์ ์ญ์
3. ๋
ธ์ ์กฐํ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
2
## ์ญ์ ํ ๋
ธ์ ์ด๋ฆ์ ์
๋ ฅํ์ธ์.
1ํธ์
[INFO] ์งํ์ฒ ๋
ธ์ ์ด ์ญ์ ๋์์ต๋๋ค.
...
...
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
3
## ๊ตฌ๊ฐ ๊ด๋ฆฌ ํ๋ฉด
1. ๊ตฌ๊ฐ ๋ฑ๋ก
2. ๊ตฌ๊ฐ ์ญ์
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
1
## ๋
ธ์ ์ ์
๋ ฅํ์ธ์.
2ํธ์
## ์ํ์ญ์ ์
๋ ฅํ์ธ์.
์ญ์ผ์ญ
## ํํ์ญ์ ์
๋ ฅํ์ธ์.
์ ์ค์ญ
## ๊ตฌ๊ฐ ๊ฑฐ๋ฆฌ(km)๋ฅผ ์
๋ ฅํ์ธ์.
2
## ์์ ์๊ฐ(๋ถ)์ ์
๋ ฅํ์ธ์.
3
[INFO] ๊ตฌ๊ฐ์ด ๋ฑ๋ก๋์์ต๋๋ค.
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
3
## ๊ตฌ๊ฐ ๊ด๋ฆฌ ํ๋ฉด
1. ๊ตฌ๊ฐ ๋ฑ๋ก
2. ๊ตฌ๊ฐ ์ญ์
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
2
## ์ญ์ ํ ๊ตฌ๊ฐ์ ๋
ธ์ ์ ์
๋ ฅํ์ธ์.
2ํธ์
## ์ญ์ ํ ๊ตฌ๊ฐ์ ์ํ์ญ์ ์
๋ ฅํ์ธ์.
์ญ์ผ์ญ
## ์ญ์ ํ ๊ตฌ๊ฐ์ ํํ์ญ์ ์
๋ ฅํ์ธ์.
์ ์ค์ญ
[INFO] ๊ตฌ๊ฐ์ด ์ญ์ ๋์์ต๋๋ค.
...
์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
4
## ์งํ์ฒ ๋
ธ์ ๋
[INFO] 2ํธ์
[INFO] ---
[INFO] ๊ต๋์ญ
[INFO] 2km / 3๋ถ
[INFO] ๊ฐ๋จ์ญ
[INFO] 2km / 3๋ถ
[INFO] ์ญ์ผ์ญ
[INFO] 3ํธ์
[INFO] ---
[INFO] ๊ต๋์ญ
[INFO] 3km / 2๋ถ
[INFO] ๋จ๋ถํฐ๋ฏธ๋์ญ
[INFO] 6km / 5๋ถ
[INFO] ์์ฌ์ญ
[INFO] 1km / 1๋ถ
[INFO] ๋งค๋ด์ญ
[INFO] ์ ๋ถ๋น์
[INFO] ---
[INFO] ๊ฐ๋จ์ญ
[INFO] 2km / 8๋ถ
[INFO] ์์ฌ์ญ
[INFO] 10km / 3๋ถ
[INFO] ์์ฌ์๋ฏผ์์ฒ์ญ
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
5
## ๊ฒฝ๋ก ๊ธฐ์ค
1. ์ต๋จ ๊ฑฐ๋ฆฌ
2. ์ต์ ์๊ฐ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
1
## ์ถ๋ฐ์ญ์ ์
๋ ฅํ์ธ์.
๊ต๋์ญ
## ๋์ฐฉ์ญ์ ์
๋ ฅํ์ธ์.
์์ฌ์ญ
## ์กฐํ ๊ฒฐ๊ณผ
[INFO] ---
[INFO] ์ด ๊ฑฐ๋ฆฌ: 4km
[INFO] ์ด ์์ ์๊ฐ: 11๋ถ
[INFO] ---
[INFO] ๊ต๋์ญ
[INFO] ๊ฐ๋จ์ญ
[INFO] ์์ฌ์ญ
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
...
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
7
[ERROR] ์ ํํ ์ ์๋ ๊ธฐ๋ฅ์
๋๋ค.
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
1
## ์ญ ๊ด๋ฆฌ ํ๋ฉด
1. ์ญ ๋ฑ๋ก
2. ์ญ ์ญ์
3. ์ญ ์กฐํ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
1
## ๋ฑ๋กํ ์ญ ์ด๋ฆ์ ์
๋ ฅํ์ธ์.
๊ฐ๋จ์ญ
[ERROR] ์ด๋ฏธ ๋ฑ๋ก๋ ์ญ ์ด๋ฆ์
๋๋ค.
## ์ญ ๊ด๋ฆฌ ํ๋ฉด
1. ์ญ ๋ฑ๋ก
2. ์ญ ์ญ์
3. ์ญ ์กฐํ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
B
## ๋ฉ์ธ ํ๋ฉด
1. ์ญ ๊ด๋ฆฌ
2. ๋
ธ์ ๊ด๋ฆฌ
3. ๊ตฌ๊ฐ ๊ด๋ฆฌ
4. ์งํ์ฒ ๋
ธ์ ๋ ์ถ๋ ฅ
5. ๊ฒฝ๋ก ์กฐํ
Q. ์ข
๋ฃ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
5
## ๊ฒฝ๋ก ๊ธฐ์ค
1. ์ต๋จ ๊ฑฐ๋ฆฌ
2. ์ต์ ์๊ฐ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
1
## ์ถ๋ฐ์ญ์ ์
๋ ฅํ์ธ์.
๊ฐ๋จ์ญ
## ๋์ฐฉ์ญ์ ์
๋ ฅํ์ธ์.
๊ฐ๋จ์ญ
[ERROR] ์ถ๋ฐ์ญ๊ณผ ๋์ฐฉ์ญ์ด ๋์ผํฉ๋๋ค.
## ๊ฒฝ๋ก ๊ธฐ์ค
1. ์ต๋จ ๊ฑฐ๋ฆฌ
2. ์ต์ ์๊ฐ
B. ๋์๊ฐ๊ธฐ
## ์ํ๋ ๊ธฐ๋ฅ์ ์ ํํ์ธ์.
...
๐ฑ ํ๋ก๊ทธ๋๋ฐ ์๊ตฌ์ฌํญ
- ์ฝํ๋ฆฐ ์ฝ๋ ์ปจ๋ฒค์
์ ์งํค๋ฉด์ ํ๋ก๊ทธ๋๋ฐํ๋ค.
- indent(์ธ๋ดํธ, ๋ค์ฌ์ฐ๊ธฐ) depth๋ฅผ 3์ด ๋์ง ์๋๋ก ๊ตฌํํ๋ค. 2๊น์ง๋ง ํ์ฉํ๋ค.
- ์๋ฅผ ๋ค์ด while๋ฌธ ์์ if๋ฌธ์ด ์์ผ๋ฉด ๋ค์ฌ์ฐ๊ธฐ๋ 2์ด๋ค.
- ํํธ: indent(์ธ๋ดํธ, ๋ค์ฌ์ฐ๊ธฐ) depth๋ฅผ ์ค์ด๋ ์ข์ ๋ฐฉ๋ฒ์ ํจ์(๋๋ ๋ฉ์๋)๋ฅผ ๋ถ๋ฆฌํ๋ฉด ๋๋ค.
- 3ํญ ์ฐ์ฐ์๋ฅผ ์ฐ์ง ์๋๋ค.
- ํจ์(๋๋ ๋ฉ์๋)์ ๊ธธ์ด๊ฐ 15๋ผ์ธ์ ๋์ด๊ฐ์ง ์๋๋ก ๊ตฌํํ๋ค.
- ํจ์(๋๋ ๋ฉ์๋)๊ฐ ํ ๊ฐ์ง ์ผ๋ง ์ ํ๋๋ก ๊ตฌํํ๋ค.
- else ์์ฝ์ด๋ฅผ ์ฐ์ง ์๋๋ค.
- ํํธ: if ์กฐ๊ฑด์ ์์ ๊ฐ์ returnํ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํํ๋ฉด else๋ฅผ ์ฌ์ฉํ์ง ์์๋ ๋๋ค.
- ํ๋ก๊ทธ๋๋ฐ ์๊ตฌ์ฌํญ์์ ๋ณ๋๋ก ๋ณ๊ฒฝ ๋ถ๊ฐ ์๋ด๊ฐ ์๋ ๊ฒฝ์ฐ ํ์ผ ์์ ๊ณผ ํจํค์ง ์ด๋์ ์์ ๋กญ๊ฒ ํ ์ ์๋ค.
- ์์ธ ์ํฉ ์ ์๋ฌ ๋ฌธ๊ตฌ๋ฅผ ์ถ๋ ฅํด์ผ ํ๋ค. ๋จ, ์๋ฌ ๋ฌธ๊ตฌ๋
[ERROR]
๋ก ์์ํด์ผ ํ๋ค.
ํ๋ก๊ทธ๋๋ฐ ์๊ตฌ์ฌํญ - Station, Line
- Station, Line ํด๋์ค๋ฅผ ํ์ฉํ์ฌ ์งํ์ฒ ์ญ๊ณผ ๋
ธ์ ์ ๊ตฌํํด์ผ ํ๋ค.
- ์ ๊ณตํ๋ ๊ฐ ํด๋์ค์ ๊ธฐ๋ณธ ์์ฑ์๋ฅผ ์ถ๊ฐํ ์ ์๋ค.
- ๊ฐ๋ฅํ๋ฉด setter๋ฅผ ์ถ๊ฐํ์ง ์๊ณ ๊ตฌํํ๋ค.
class Station(val name: String)
ํ๋ก๊ทธ๋๋ฐ ์๊ตฌ์ฌํญ - StationRepository, LineRepository
- Station๊ณผ Line์ ์ํ๋ฅผ ์ ์ฅํ ์ ์๋ StationRepository, LineRepository๋ฅผ ์ ๊ณตํ๋ค.
- ํ์ ์ StationRepository, LineRepository ์ด ์ธ ์ถ๊ฐ๋ก Repository๋ฅผ ๋ง๋ค ์ ์๋ค.
- ์ถ๊ฐ๋ก ์์ฑ๋๋ ๊ฐ์ฒด์ ๋ํด์ XXXRepository ๋ค์ด๋ฐ์ผ๋ก ์ ์ฅ ํด๋์ค๋ฅผ ์ถ๊ฐํ ์ ์๋ค.
- ๊ฐ์ฒด๋ค์ ์ํ๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด์ XXXRepository ํด๋์ค๋ฅผ ํ์ฉํด ์ ์ฅ ๋ก์ง์ ๊ตฌํํด์ผ ํ๋ค.
- ํ์์ ๋ฐ๋ผ ์์ ๋กญ๊ฒ ์์ ์ด ๊ฐ๋ฅํ๋ค.
object StationRepository {
private val stations = mutableListOf<Station>()
fun stations() = stations.toList()
fun addStation(station: Station) {
stations.add(station)
}
fun deleteStation(name: String) = stations.removeIf { it.name == name }
}
์ต๋จ ๊ฒฝ๋ก ๋ผ์ด๋ธ๋ฌ๋ฆฌ
- jgrapht ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํ๋ฉด ๊ฐํธํ๊ฒ ์ต๋จ๊ฑฐ๋ฆฌ๋ฅผ ์กฐํํ ์ ์์
- Dijkstra ์๊ณ ๋ฆฌ์ฆ์ ๋ฐ๋์ ์ดํดํ ํ์๋ ์๊ณ ๋ฏธ์
์ ์ ์ฉํ ์ ๋๋ก๋ง ์ดํดํ๋ฉด ๋จ
- JGraphtTest ํด๋์ค์ ํ
์คํธ๋ฅผ ํ์ฉํ์ฌ ๋ฏธ์
์ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ธฐ๋ฅ์ ํ์ตํ ์ ์์
- ์ ์ (vertex)๊ณผ ๊ฐ์ (edge), ๊ทธ๋ฆฌ๊ณ ๊ฐ์ค์น ๊ฐ๋
์ ์ด์ฉ
- ์ ์ : ์งํ์ฒ ์ญ
- ๊ฐ์ : ์งํ์ฒ ์ญ ์ฐ๊ฒฐ์ ๋ณด
- ๊ฐ์ค์น: ๊ฑฐ๋ฆฌ or ์์ ์๊ฐ
- ์ต๋จ ๊ฑฐ๋ฆฌ ๊ธฐ์ค ์กฐํ ์ ๊ฐ์ค์น๋ฅผ ๊ฑฐ๋ฆฌ๋ก ์ค์
@Test
internal fun getDijkstraShortestPath() {
val graph = WeightedMultigraph<String, DefaultWeightedEdge>(DefaultWeightedEdge::class.java)
graph.addVertex("v1")
graph.addVertex("v2")
graph.addVertex("v3")
graph.setEdgeWeight(graph.addEdge("v1", "v2"), 2.0)
graph.setEdgeWeight(graph.addEdge("v2", "v3"), 2.0)
graph.setEdgeWeight(graph.addEdge("v1", "v3"), 100.0)
val dijkstraShortestPath = DijkstraShortestPath(graph)
val shortestPath = dijkstraShortestPath.getPath("v3", "v1").vertexList
assertThat(shortestPath.size).isEqualTo(3)
}
- ์ญ ์ฌ์ด์ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ ๋ คํ์ง ์๋ ๊ฒฝ์ฐ V1->V3 ๊ฒฝ๋ก๊ฐ ์ต๋จ ๊ฒฝ๋ก
- ์ญ ์ฌ์ด์ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ ๋ คํ ๊ฒฝ์ฐ V1->V3 ๊ฒฝ๋ก์ ๊ฑฐ๋ฆฌ๋ 100km, V1->V2->V3 ๊ฒฝ๋ก์ ๊ฑฐ๋ฆฌ๋ 4km์ด๋ฏ๋ก ์ต๋จ ๊ฒฝ๋ก๋ V1->V2->V3
- ๋ฏธ์
์ kotlin-subway-path ์ ์ฅ์ ๋ฅผ fork/cloneํด ์์ํ๋ค.
- ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ ์ kotlin-subway-map/docs/README.md ํ์ผ์ ๊ตฌํํ ๊ธฐ๋ฅ ๋ชฉ๋ก์ ์ ๋ฆฌํด ์ถ๊ฐํ๋ค.
- git์ commit ๋จ์๋ ์ ๋จ๊ณ์์ README.md ํ์ผ์ ์ ๋ฆฌํ ๊ธฐ๋ฅ ๋ชฉ๋ก ๋จ์๋ก ์ถ๊ฐํ๋ค.