Google Hash Code 2021 : Team Little Piplup ์ค๋น๊ณผ์
์ด ๊ธ์ ์ฌํด ํด์์ฝ๋๋ฅผ ์ค๋นํ๋ ๊ณผ์ ๋ฑ์ ๋ํ ์ด์ผ๊ธฐ์ด๊ณ , ํด์์ฝ๋ 2021์ Specificํ (๋ฌธ์ ๋ฑ) ์ ๋ค์ ๊ธ(๋งํฌ์์ ๋ค๋ฃน๋๋ค.
๋ด๋ ์ ํด์์ฝ๋๋ฅผ ์ค๋นํ๋ ค๋ ๋ถ๋ค์ด ์ฝ์์๋ ์ฌ๋ฐ๊ฒ ์ฐ๊ณ ์ถ์๋๋ฐ ์ด๋ค์ง ๋ชจ๋ฅด๊ฒ ๋ค์. :(
Google Hashcode
Google Hashcode๋ ๊ตฌ๊ธ์์ ๊ฐ์ตํ๋ Coding competition ์ค ์ต์ ํ์ ํด๋ฆฌ์คํฑ์ ๊ฒจ๋ฃจ๋ ๋ํ์ ๋๋ค. NPํ ๋ฌธ์ ๊ฐ ์ฃผ์ด์ง๊ณ , ์ด ๋ฌธ์ ์ ๋ํด ์ข์ ํด๋ฆฌ์คํฑ๊ณผ ์ ์ ํ ์๊ณ ๋ฆฌ์ฆ์ ์ต์ ํ๋ฅผ ํตํด ์ฃผ์ด์ง ๋ฐ์ดํฐ์ ์์ ์ข์ ์ ์๋ฅผ ๋ฐ๋ ๊ฒฝ์์ธ๋ฐ, ๋ชจ๋ ๋ฐ์ดํฐ์ ์ด ๊ณต๊ฐ๋๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ์ ์ ์ฑ์ง์ ์ ํ์ฉํ๋ค๊ฑฐ๋ ํ๋, Data scienceํฑํ ๋ฉด์ด ์กฐ๊ธ ์๋ค๊ณ ๋ ํ ์ ์๊ฒ ์ต๋๋ค.
์ด๋ฐ ํํ์ ๋ํ๋ ๊ธฐ์กด์ PS์๋ ๋ ๋ค๋ฅด์ง๋ง, ํ์ํ ์คํฌ์ ์ ์ด๋์ ๋ ๋น์ทํ๊ณ , ์ต์์๊ถ ๋ ๋ฒจ์์๋ ๊ธฐ์กด PS ์ค๋ฌ์ด ํ ํฌ๋๋ค์ด ์ ์๋ฏธํฉ๋๋ค. PS ์ค๋ ฅ๊ณผ ๋งค์ฐ ๋์ ์๊ด๊ด๊ณ๊ฐ ์์ง๋ง, Hashcode ํ ๋ํ์ ํนํ ๊ฐํ ํ๋ค๋ ์์ต๋๋ค.
๋ฌธ์ ๊ฐ ์๋นํ Real-world ์ค๋ฝ๊ฒ ์ถ์ ๋๋ฉฐ, ์ค์ ๋ก Google Loon ๊ฐ์ ๊ตฌ๊ธ์ product์ ๊น์ ์ฐ๊ด์ด ์์ต๋๋ค. ๋ฌธ์ ๋ฅผ ํ๋ค ๋ณด๋ฉด ๋ญ๊ฐ ์ง์ง ์ค์ ๋ก ์ ์๋ฏธํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋๋์ ๋ฐ๊ธฐ๋ ํฉ๋๋ค.
Team Little Piplup
์ด ํ์ 2019๋
๋ ICPC๋ฅผ ๊ธฐ์ ์ผ๋ก ์ ์ Coffeetea
, DHDroid
๋ก ์ถ๋ฐํ์ต๋๋ค. ์ดํ ๋ ์ฌ๋์ด ๋ณ์ญํน๋ก๋ฅผ ์ํด ํดํ์ ํ๊ฒ ๋์๋๋ฐ, ํดํ์์ ICPC ๋ณธ์ ์ถ์ ๊ถ์ด ์๊ธฐ ๋๋ฌธ์ ์ ๊ฐ ๋ค๋ฅธ ํ์ ์ฐพ๊ฒ ๋์์ต๋๋ค. (๊ฒฐ๊ณผ์ ์ผ๋ก, ์์ธ๋์์ ๋ณธ์ ์ ์ง์ถํ๋ ๋์ด๋๋ฅผ ์๊ฐํด ๋ณด๋ฉด ๋ณ๋ก ๊ทธ๋ด ํ์๊ฐ ์์๋ค๋ ์๊ฐ์ด ๋ค๊ธฐ๋ ํฉ๋๋ค๋งโฆ) 2020๋
๋ถํฐ ๊ทธ ์๋ฆฌ๋ ๋ณํน์ค์ด์๊ณ ์ ๋ ๊ณ์ PS๋ฅผ ๊ฐ์ด ๊ณต๋ถํ๋ Dlwocks31
์ด ๋ค์ด๊ฐ๊ฒ ๋์์ต๋๋ค.
Dlwocks31
์ด ๋ค์ด๊ฐ ์์ ์ ํ๋ช
์ Army Piplup
์ผ๋ก ๊ฐ์นญ๋์๊ณ , 2020 ICPC ์์ ์์ 11๋ฑ์ ๊ฑฐ๋๋ ๋๋ผ์ด ์ค๋ ฅ์ ๋ณด์ฌ์ฃผ์์ต๋๋ค. ์ฝ๋ํฌ์ค ๋ ์ดํ
(Max)๋ฅผ ๊ธฐ์ค์ผ๋ก dlwocks๋ 2200++, ์ ๋ 2100, Coffeetea์ DHDroid๋ 1900์ธ๋ฐ dlwocks31์ ๋ชฐ๋ผ๋ ์ ๋ ๊ฑฐํ๋ ์ดํ
์ด์๊ธฐ ๋๋ฌธ์ ๊ฑฐํ์ด ๊บผ์ง ์ง๊ธ์ 1900 ์ ๋, ์์ณ์ฃผ๋ฉด ํผํ ์ค๊ฐ์ฏค์ CP ์ค๋ ฅ์ ๊ฐ์ง๊ณ ์๋ ๊ฒ์ผ๋ก ๋ณด์
๋๋ค.
-
Gratus907
: ์ํ์ ์ธ ๋ฌธ์ ์ ๋น๊ต์ ๊ฐํ๊ณ , ๋ง๋ฆฌ์ง ์์๋๊น์ง๋ ๊ตฌํ์ด ๋น ๋ฅด์ง๋ง ๋ง๋ฆฌ๋ฉด ํ์์ด ๋ง๋ฆฌ๋ ๊ฒฝํฅ์ด ์์ต๋๋ค. -
Dlwocks31
: ๊ฐ์ฅ C++ ๊ตฌํ์ ๊น๋ํ๊ฒ ์ ํ๊ณ , ๊ตฌํ์์ ๋ ๋ง๋ฆฌ๋ ํธ์ ๋๋ค. -
DHDroid
: Constructiveํ ๋ฌธ์ ์ ๋งค์ฐ ๊ฐํ๊ณ , ๊ด์ฐฐ์ ์ ๋นํ (์ฆ๋ช ) ํ๋ ๋ฅ๋ ฅ์ด ๋ฐ์ด๋ฉ๋๋ค. -
Coffeetea
: ๊ทธ๋ฆฌ๋ํ๊ฑฐ๋ ํด๋ฆฌ์คํฑํ ๊ด์ฐฐ, ๋๋ต์ ์ธ ๊ฒฝํฅ์ฑ์ ํ์ ์ ๊ฐํฉ๋๋ค. ๋ญ๊ฐ ๋ฌธ์ ์ ๋น์ํ๋ ํน์ฑ์ด ์์ด์ ๊ธ์ธ๋ Coffeetea์ ํํ์ ๋ง์ด ๋น๋ฆฌ๊ฒ ๋ฉ๋๋ค :)
Preperation
Hashcode ๋ํ๋ฅผ ์ค๋นํ๊ธฐ ์ํด์ ์ฌํด๋ ๋ง์ ๋ ธ๋ ฅ์ ๊ธฐ์ธ์ด์ง ๋ชปํ์ต๋๋ค. ์๋ ์๋ ๋น๊ต์ ๋ง์ ๋ ธ๋ ฅ์ ํ๋๋ฐ, ์ฌ๋ฌ๊ฐ์ง ๊ตํ์ ์ป์์ต๋๋ค. ์๋ ๋ํ ํ๊ธฐ๋ ์ ํฐ์คํ ๋ฆฌ ๋ธ๋ก๊ทธ์์(๋งํฌ) ๋ณผ ์ ์์ต๋๋ค.
- ๋ฌธ์ ์ ๊ตฌํ๋์ด ์๋นํ ๋ง์์, ๊ตฌํ์์ ๋ง๋ฆฌ๋ฉด ์๋นํ ํ๋ญ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก dlwocks31์ด ๊ตฌํ์ด ๊ฐ์ฅ ๋ ๋ง๋ฆฌ๋๊น ์ ์ฒด์ ์ธ ๊ตฌํ์ ๋งก๋, ํ์ํ๋ค๋ฉด ์ธ์ ๋ ๊ตฌํ์ ์ ๋ ๋ค๋ฅธ ํ์๋ค์ด ์ฐธ์ฌํด์ผ ํฉ๋๋ค.
- Parameter Tuning์ด ๋ง์ ๋์์ด ๋ฉ๋๋ค. ํ์ธ ํ๋์ ์๋ํํ๋ ์ฝ๋๋ฅผ ๋ฏธ๋ฆฌ ์ค๋นํ๋๋ฐ, ์ด๋ฅผ ์ํด์๋ ์ ์ํ๊ณ ์ ํํ๊ฒ ์ฑ์ ์ ๋ฐ๊ณ ์ถ์ต๋๋ค.
- ์ฑ์ ์ ์น ํ๊ฒฝ์์ ์ ์ถํ๋ ๋ฐ ๋ง์ ์๊ฐ์ด ๊ฑธ๋ฆฝ๋๋ค. ์ด๋ ์๋นํ ๋ถํธํ๊ธฐ ๋๋ฌธ์, ๊ฒฝ์ฐ์ ๋ฐ๋ผ ์ฑ์ ๊ธฐ๋ฅผ ์ง๋ ๊ฒ์ด ์๋ฏธ๊ฐ ์์ต๋๋ค.
- ์ฑ์ ๊ธฐ๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋จ์ ์ ๋น์ฐํ๊ฒ๋ 4์๊ฐ์ด๋ผ๋ ์งง์ ๋ํ์๊ฐ์์ ํ๋ช ์ด ๋น ์ ธ์ 1์๊ฐ์ ๋๋ฅผ ์ฑ์ ๊ธฐ์ ์จ์ผ ํ๋ค๋ ์ ์ ๋๋ค.
- ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ , ์ฑ์ ๊ธฐ ์์ฑ์ ํตํด ๋ฌธ์ ์ํฉ์ ์ข๋ ๊น์ด ์ดํดํ ์ ์๋ค๋ ์ , ๊ฒฝ์ฐ์ ๋ฐ๋ผ ์ฑ์ ๊ธฐ์ ์๋ฎฌ๋ ์ด์ ๊ฐ์ ๋ถ๋ถ๋ค์ ๋ณธ ์๋ฃจ์ ์์๋ ์์ฉํ ์ ์๋ค๋ ์ ์ด ์์ด์ ๊ณ ๋ คํ ๋ง ํฉ๋๋ค.
- ๊ฒฐ๊ตญ ์์๊ถ(5-10%)์์ ์ต์์๊ถ(1%)์ ๊ฒฐ์ ํ๋ ๊ฒ์, (์๋
์๋) ์๋์คํ๊ธ ์๊ณ ๋ฆฌ์ฆ ์ต์ ํ์์ต๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก๋, ํน์ ๋ฐ์ดํฐ์ ๊ฒฝ์ฐ ์ ์ ํ ํ์์ ํตํด 3-SAT ๊ฐ์ ๋ฌธ์ ๋ก ๋ฐ๊ฟ ์ ์์๊ณ , ์ด๋ฅผ ์ ์ ํ 3SAT ์๋ฒ์ ๋จน์ฌ์ ๋ต์ ๊ตฌํ๋ค๊ฑฐ๋, greedy ๋์ MCMF๋ฅผ ์ด๋ค๋๊ฐ ํ๋ ์๋ฃจ์
๋ค์ด ์ต์์๊ถ์ ๊ฒจ๋ฃจ์์ต๋๋ค. ๋ค์ ๊ฐ์ ์ต์์๊ถ ๋ด์์๋ Parameter Tuning์ด ์ธ๋ถ๋ฑ์๋ฅผ ๊ฒฐ์ ํฉ๋๋ค.
- ๊ทธ๋์, ์ด๋ฒ์๋ ์์ฉ NP-Complete Solver๋ค์ ์ค๋นํ์ต๋๋ค. ์ด๋ฐ์ชฝ์ ๋น๊ต์ ์ ๊ฐ ์กฐ๊ธ๋ ํด๋ณธ๊ฒ ๋ง๊ธฐ ๋๋ฌธ์, ์ด๊ฒ์ ๊ฒ ์ฐพ์ ๋ชจ์ผ๊ณ , ์ ์ต๋์ ๋ชฉํ๋ ์ด๊ฑฐ ์ฌ์ค 3SAT์ธ๋ฐ ๋ฅผ ์ฐพ๋ ๊ฒ์ด๋ผ๊ณ ์ค์ค๋ก ์๊ฐํ์ต๋๋ค. (๊ฒฐ๊ตญ ํ๋ ธ์ต๋๋ค)
- Glucose SAT Solver, Concorde TSP Solver, Google ORTools(LP, Flow, IP) ์ ๋๋ ์ธํ ๋์ด ์์์ต๋๋ค.
- ์๊ฐ๋ณด๋ค ๋์ Computation power๊ฐ ํ์ํ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค. ํ์ ์ ์์ด i7๊ธ ์ด์์ ๋ ธํธ๋ถ์ ์ฌ์ฉํ์ผ๋ฉฐ ํ์ํ ๋ ์ฌ์ฉํ ์ ์๋ i7๊ธ ๋ฐ์คํฌํ 2๋๊ฐ ์ธํ ๋์์ต๋๋ค. ์นด์นด์ค ํด๋ผ์ฐ๋, ๋ค์ด๋ฒ ํด๋ผ์ฐ๋ ๋ฑ์ด ์ค๋น๋์ด์์๋ ๋ค๋ฅธ ํ์ ๋นํ๋ฉด ๋ถ์กฑํ ์ง๋ ๋ชจ๋ฅด์ง๋ง ์ ํฌ๊ฐ ํ๋ณดํ ์ ์๋ ์ปดํจํ ํ์๋ ๋์์ง ์์๊ณ , ๊ฒฐ๊ตญ ๊ทธ ๋ฌด์๋ ํ์ ์์์ต๋๋ค.
์ ๋ต
- ์ฒซ 1์๊ฐ ์ ๋, ์ ๊ฐ Grader๋ฅผ ์ง๊ธฐ๋ก ํ์ต๋๋ค.
- ๊ทธ๋์, DHDroid์ Coffeetea๋ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํ๊ธฐ๋ก ํ์ต๋๋ค. ์๋ฅผ ๋ค์ด ๊ทธ๋ํ ๋ฐ์ดํฐ๊ฐ ์ฃผ์ด์ง๋ค๋ฉด, ๋ช๊ฐ์ ํ๋ธ๊ฐ ์กด์ฌํ๋ ๋ฐ์ดํฐ์ธ์ง, Degree-bounded์ธ์ง ๋ฑ์ ์ ๋ณด๊ฐ ์์ผ๋ฉด ์ผ๋ฐ์ ์ธ ๊ทธ๋ํ์์๋ ์์๋ ๋ชปํ ๊ฒ๋ค์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ์ด๋ฐ ์ ๋ณด๋ ์ ๋ง ํ์์ ์ ๋๋ค. ๊ฒฝ์ฐ์ ๋ฐ๋ผ ์ด ๋๋ช ์ด ์ด๋์ ๋์ ๊ทธ๋ฆฌ๋ํ ์๋ฃจ์ ์ ์ ๊ณตํด ์ค ๊ฒ์ ๋๋ค. Grader ์์ฑ์ ๊ทธ๋ฅ ๊นก ์๋ฎฌ์ด๊ธฐ ๋๋ฌธ์, ์ด ๋๋ช ์ ๋ ผ์๋ฅผ ์ ๊ฐ ์ด๋์ ๋ ๋ค์ผ๋ฉด์ ์งค ์ ์์ต๋๋ค,
- Dlwocks31์ด ์ด๋ ํ๋๊ฐ๋ฅํ ์ ๋ค๋ฆญ ์๋ฃจ์ ์ ์์ฑํ๊ธฐ๋ก ํ์ต๋๋ค. ์ด ์ฝ๋๋ ๋์ค์ ๊ฐ์ด ๋์๊ฐ๋ฉด์ ๊ณ ์น๊ณ ํ๋ํด์ผ ํ๋ฏ๋ก, ๋น๊ต์ ์ฝ๊ธฐ ์ฝ๊ฒ ์ง์ผ ํ๊ณ , IO๊ฐ์ (๋ค๋ฅธ ์ฌ๋๋ค์ด ๋ชฐ๋ผ๋ ๋๋) ๋ถ๋ถ๋ค์ ๋ถ๋ฆฌํ๊ธฐ๋ก ํ์ต๋๋ค.
- ์ดํ 2-3์๊ฐ ๋์, ๋ค๋ช ์ด ๊ฐ์ด ์๋ฃจ์ ์ ์ก์ผ๋ฉด์ ์๊ณ ๋ฆฌ์ฆ ๊ฐ์ ๊ณผ ํ๋ผ๋ฏธํฐ ํ๋์ ๋ฐ๋ณตํ๋ฉฐ ๊ณ์ ์ ์ถํ๋ ๋ฐฉ์์ ๋๋ค.
์ ๋ฐ์ ์ผ๋ก ์ฒซ 1์๊ฐ๋์ ์ ๋ dlwocks31์ ์ฝ๋ฉ์ค๋ ฅ์ ์กฐ๊ธ ์์กดํ๋ ๊ฐ์ด ์์ต๋๋ค๋ง, ์ ํฌ๊ฐ ํ ์ ์๋ ์ต์ ์ด์๊ณ ์ง๋ ๋ช๋ ์น ์์ ์ ํ์ด๋ดค์ ๋๋ ๋ง์ด ๋๋ ์ ๋ต์ด์์ต๋๋ค. ์ด์ ๋ ๋ณต์ก๋์ ๊ตฌํ์ ์ ํฌ ๋์ ์ด๋ป๊ฒ๋ ๊ฐ๋ฅํ๊ธด ํ์๊ณ , ํ์ PS๋์๋ ๋ฌ๋ฆฌ 1์ด์ Strict time limit์ด ์์ผ๋ฏ๋ก set, map ๊ฐ์ ๊ฒ๋ค์ ๋ง๊ตฌ ๋จ์ฉํ๋ฉฐ ์ง๋ ๋๊ธด ํฉ๋๋ค.
์ด ์ ๋ต์ ์ฌํด ํด์์ฝ๋์์ ํ๊ณ์ ๋ถ๋ชํ๊ฒ ๋ฉ๋๋ค.
์๋ ํ์ฐ์ต๋ค
๋ช๋ช ํด์์ฝ๋ ์์ ๋ฌธ์ ๋ฅผ ์๋ ์ ๊ฐ์ด ํ์ด๋ณด์์์ต๋๋ค. ๊ทธ๋ ์ 1-4 ์ ๋ต๋ ์ ๋ฆฝํ๋๋ฐ, ๋ช๊ฐ์ง ์ ๋ต์ ์ธ ํ๋๋ ์์์ต๋๋ค.
- ๋ฌธ์ ์ ๊ตฌํ ๋ณต์ก๋๊ฐ ๋๋ค๋ฉด, ์ฒด์ปค๋ฅผ ์ง๋ ๊ฒ์ ๋ณ๋ก ๋ฐ๋์งํ์ง ๋ชปํฉ๋๋ค. ์ด๊ฑด 2016 Qual๋ผ์ด๋์ DRONE์ด๋ผ๋ ๋ฌธ์ ์์ ๋๊ผ์ต๋๋ค. ํด์์ฝ๋๋ฅผ ์ค๋นํ๋ค๋ฉด ๊ผญ ํ์ด๋ณด๊ธธ ๋ฐ๋๋๋ค.
๋ฐ๋ฉด, ๊ตฌํ ๋ณต์ก๋๋ ์ ์ ํ๋ฐ Simulated annealing๊ฐ์๊ฑธ ๋ฐ์์์๋ ๋ฌธ์ ๋ผ๋ฉด ๋ฌด์กฐ๊ฑด ์ฒด์ปค๋ฅผ ์ง์ผ ํฉ๋๋ค. - ์ด๋ค ๋ฌธ์ ๋, ์์ ๋ ๋ฆฝ์ ์ธ ๋๊ฐ์ด์์ ์๊ณ ๋ฆฌ์ฆ์ ์๊ตฌํ๋ค๋ ์ฌ์ค์ ์๊ฒ ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด ๊ทธ๋ํ ๋ฌธ์ ์์ ์ด๋ค ๋ฐ์ดํฐ๋ Deg-bounded๊ณ ์ด๋ค ๋ฐ์ดํฐ๋ ๋ค์ฏ๊ฐ์ ํ๋ธ์ 9995๊ฐ์ ๊ฐ์ง์ ์ ์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ค๋ฉด, ๋ ๋ฌธ์ ๋ ์ฌ์ค ์์ ๋ค๋ฅธ ๋ฌธ์ ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด๊ฒฝ์ฐ ๊ตฌํํ์ด์ฆ๊ฐ n๋ฐฐ ํ๋ค์ด์ง๋๋ฐ, ์ด๋ฅผ ๋น ๋ฅด๊ฒ ํ์ ํด์ผ ํ๋ฏ๋ก ๋๋ช ์ด ๋ฐ์ดํฐ๋ฅผ ์๊ฐ๋ณด๋ค ๋ง์ด ๋ถ์ํด์ผ ํ๋ค๋ ๊ฒฐ๋ก ์ ๋ด๋ ธ์ต๋๋ค. ๊ตฌํ์ด ์๋ ๋ฐ์ดํฐ ๋ถ์์ 2๋ช ์ ๋ฐฐ์ ํ ์ด์ ๊ฐ ์ฌ๊ธฐ ์์ต๋๋ค.
- ์ด๋ฅผ ์ํด dlwocks31์ด ๊ตฌํ์ ์ ๋ง ์ต๋ํ ์ ๋ค๋ฆญํ๊ฒ ์ง์ผ ํจ์ ๊นจ๋ฌ์์ต๋๋ค.
ํ์ฐ์ต : 2020 Hashcode WF
๊ฐ์ฅ ์ข์ ํด์์ฝ๋ ์ฐ์ต์ ์ ํด์์ฝ๋๊ธฐ ๋๋ฌธ์, ์๋ ํด์์ฝ๋ ์ํ๋ฅผ ๊ฐ์ด ๋์์ต๋๋ค. ์ ๋ง ์ถฉ๊ฒฉ์ ์ธ ๋์ด๋์ ๋ฌธ์ ๋ก ์ธํด ์ ํฌ ์ ๋ต์ ํ๊ณ๊ฐ ๋๊ปด์ก์ต๋๋ค.
๋์ถฉ ์๊ธฐํ์๋ฉด ์ ๋ง ๋นก์ผ ๊ตฌํ ๋ฌธ์ ์๊ณ , ๋์ถฉ ์๋ฎฌ๋ ์ด์ ๋ง ์ฑ๊ณตํด๋ ์ํ ์ค๊ฐ์ฏค์ ์ ์๊ฐ ๋์ค๋ ๋ฏธ์น ์ ์ด์์ต๋๋ค. ์ ์ ๋ต์ด ๋ค์๊ณผ ๊ฐ์ด ์คํจํ์ต๋๋ค.
- ํ์ฐ์ต๋๋ ์จ๋ผ์ธ ์ฑ์ ์ ๋ฐ์ ์ ์์ผ๋ฏ๋ก, ํ๋ช ์ ์ง์ ํด์ ํ๋ช ์ด ๋ฏธ๋ฆฌ ์ฒด์ปค๋ฅผ ์ง ์ต๋๋ค. ์ ๊ฐ ์ฒด์ปค๋ฅผ ์ง ์๋๋ฐ, ์ง์์ ํผ์ ์ฒด์ปค๋ฅผ ์ง๋๋ฐ ์ผ๋จ 1์๊ฐ๋ณด๋ค ํจ์ฌ ์ค๋๊ฑธ๋ ธ๊ณ , ์ ํ์ฑ๋ ๋ณ๋ก ๋ณด์ฅ๋์ง ์์์ต๋๋ค. ๊ทธ๋๋ ๊ทธ๋ญ์ ๋ญ ๋ง์ด ๋๋ ๊ฒ ๊ฐ์๋๋ฐ ๋ญ ์ด๋ถ๋ถ์ ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ์ค์ํ ๊ฒ์ ์ฒด์ปค๋ฅผ 1์๊ฐ ๋ด๋ก ์ง์ง ๋ชปํ๋ค๋ ๊ฒ์ ๋๋ค.
- ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํ๊ณ ๊ทธ๋ฆฌ๋๋ฅผ ๋ ์ฌ๋ ค์ผ ํ๋๋ฐ, ๊ทธ๋ฆฌ๋ํ๊ฒ ๋ญ ํ ์ ์์์ง๋ ๋ํดํ์ต๋๋ค. ์ง๋์น๊ฒ ๊ตฌํ๋์ด๋๊ฐ ๋์์, Coffeetea์ ์ฅ์ ์ ์ด๋ฆฐ ์์ด๋์ด๋ค์ด ์์์ก์ง๋ง ๊ตฌํ๊ฐ๋ฅํด ๋ณด์ด๋ ์๋ฃจ์ ์ด ์์์ต๋๋ค.
- dlwocks31์ด 1์๊ฐ์์ปค๋ 2-3์๊ฐ์ ๊ฑธ์ณ์๋ ๊ฐ๋ฅํ C++ ์ฝ๋๋ฅผ ์์ฑํ์ง ๋ชปํ์ต๋๋ค. ์ด๊ฑด blameํ ์ผ์ ์ ๋ ์๋๊ฒ, ๋ค๋ฅธ 3๋ช ์ด ์ก์์ผ๋ฉด ํ๋ฃจ ์ข ์ผ ์งฐ์ด๋ ๋ชป ์งฐ์ ๊ฒ์ ๋๋ค.
- ์๋ฃจ์ ์ด ์์ผ๋ฏ๋ก ํ๋ํ ํ๋ผ๋ฏธํฐ๋ ๊ฐ์ ํ ์๊ณ ๋ฆฌ์ฆ๋ ์ฝ๋๋ฅผ ์์ฑํ ์๊ฐ ์์ต๋๋ค.
2020 WF๋ฅผ ํ๋ฉด์, ์ ํฌ ์ ๋ต์ด dlwocks31์ ๊ตฌํ๋ ฅ์ ์ผ๋ง๋ ์์กดํ๋์ง ๊นจ๋ซ๊ฒ ๋์์ต๋๋ค. ๊ฒฝ์ฐ์ ๋ฐ๋ผ ์ฒด์ปค๋ฅผ ๋์ง๋๋ผ๋ ์ด ๊ตฌํ์ ํผํ ์ ์๊ณ , ์ด ๊ตฌํ์์ ๋ง๋ฆฌ๋ฉด 0์ ์ผ๋ก ๋ํ๋ฅผ ๋ง๋ฌด๋ฆฌํ๋ ์ฐธ์ฌ๊ฐ ๋ฒ์ด์ง๊ธฐ ๋๋ฌธ์ ๋๋ค.
ํ์ํ๋ค๋ฉด ๊ตฌํ์ ๋๋์ด์ผ ํ๋ค๋ ์ง๊ฐ์ด ๋ค์์ผ๋ฏ๋ก, ์ฒ์์ผ๋ก ์ด๋ฐ ๋ํ ์ค์๋ Git์ ์ด์ฉํ๊ธฐ๋ก ํ์ต๋๋ค. ์ต๋ํ ๊ฐ์ ํ์ผ์ ๋์์ 2๋ช ์ด ๋ง์ง๋ ์ผ์ ํผํ๋ฉด์, ํ์ํ๋ค๋ฉด ํ์ผ์ ๋ง์ด ๋๋ ค์๋ผ๋ ์ฝ๋๋ฅผ ์ ์ ํ ๊ณต์ ํ ํ์๊ฐ ์์๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ฌ๋ฌ ํ์ผ๋ก ๋๋์ด ๊ตฌํํ ๋ค์ ํฉ์น๋ ๋ฐฉ๋ฒ์ ํฌํจํด์, ๋ถ์กฑํ ๊ตฌํ๋ ฅ์ ์ ๋ต์ผ๋ก ๋ฉ์ฐ๊ธฐ ์ํ ๋ง์ ์๋๊ฐ ์์์ต๋๋ค.