/kotlin-subway-path

๐Ÿš‡ ์ง€ํ•˜์ฒ  ๋…ธ์„ ๋„ & ๊ฒฝ๋กœ ์กฐํšŒ ๋ฏธ์…˜์„ JavaScript๋กœ ์ง„ํ–‰ํ•˜๋Š” Repository

Primary LanguageKotlin

์ง€ํ•˜์ฒ  ๋…ธ์„ ๋„ & ๊ฒฝ๋กœ ์กฐํšŒ ๋ฏธ์…˜

  • ์ง€ํ•˜์ฒ  ์—ญ๊ณผ ๋…ธ์„ ์„ ๊ด€๋ฆฌํ•˜๋Š” ์ง€ํ•˜์ฒ  ๋…ธ์„ ๋„ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•œ๋‹ค.
  • ๋“ฑ๋ก๋œ ์ง€ํ•˜์ฒ  ๋…ธ์„ ๋„์—์„œ ๊ฒฝ๋กœ๋ฅผ ์กฐํšŒํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•œ๋‹ค.

๐Ÿš€ ์ดˆ๊ธฐ ์„ค์ • - ๊ณตํ†ต

  • ํ”„๋กœ๊ทธ๋žจ ์‹œ์ž‘ ์‹œ ์—ญ, ๋…ธ์„ , ๊ตฌ๊ฐ„ ์ •๋ณด๋ฅผ ์ดˆ๊ธฐ ์„ค์ • ํ•ด์•ผ ํ•œ๋‹ค.
  • ๊ฑฐ๋ฆฌ์™€ ์†Œ์š” ์‹œ๊ฐ„์€ ์–‘์˜ ์ •์ˆ˜์ด๋ฉฐ ๋‹จ์œ„๋Š” 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. ๋Œ์•„๊ฐ€๊ธฐ

## ์›ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์„ ํƒํ•˜์„ธ์š”.

...


๐ŸŽฑ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์š”๊ตฌ์‚ฌํ•ญ

  • ์ฝ”ํ‹€๋ฆฐ ์ฝ”๋“œ ์ปจ๋ฒค์…˜์„ ์ง€ํ‚ค๋ฉด์„œ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•œ๋‹ค.
    • Kotlin Coding Conventions
    • ๋‹จ, ๋“ค์—ฌ์“ฐ๊ธฐ๋Š” '2 spaces'๊ฐ€ ์•„๋‹Œ '4 spaces'๋กœ ํ•œ๋‹ค.
  • 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 ํŒŒ์ผ์— ์ •๋ฆฌํ•œ ๊ธฐ๋Šฅ ๋ชฉ๋ก ๋‹จ์œ„๋กœ ์ถ”๊ฐ€ํ•œ๋‹ค.