ํŒ์ง€ ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ ๋˜๋Š” ๋ณด๋“œ ๊ต์œก ๊ฒŒ์ž„ Battle of the Golems์˜ ์Šคํฌ๋ž˜์น˜ ๋ฒ„์ „์„ ๋งŒ๋“  ๋ฐฉ๋ฒ•

ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ณผ ๋กœ๋ด‡๊ณตํ•™์˜ ๊ธฐ์ดˆ๋ฅผ ๊ฐ€๋ฅด์น˜๋Š” ๋ณด๋“œ๊ฒŒ์ž„ '๊ณจ๋ ˜์˜ ์ „์Ÿ'์ด ๋ฒŒ์จ 5์ฃผ๋…„์„ ๋งž์•˜๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฒŒ์ž„์€ ๊ณ„์†ํ•ด์„œ ์‚ด์•„์žˆ๊ณ  ๋ฐœ์ „ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ๋„ฃ์€ ์•„์ด๋””์–ด์™€ ์ฒซ ๋ฒˆ์งธ ๋ฒ„์ „์˜ ๊ฐœ๋ฐœ์— ๋Œ€ํ•ด ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์—์„œ.

๊ทธ๋Ÿฌ๋‚˜ ์ด์ œ ์šฐ๋ฆฌ๋Š” ๋ถ€๋ชจ์™€ ๊ต์‚ฌ์˜ ์š”์ฒญ์„ ํฌํ•จํ•˜์—ฌ ๊ฒŒ์ž„์— ๋„์ž…ํ•  ์œ„ํ—˜์ด ์žˆ์—ˆ๋˜ ๋ฐฉ๋ฒ•๋ก ์  ๋ฐ ์‹œ๊ฐ์  ๊ตฌ์„ฑ ์š”์†Œ์˜ ์ƒ๋‹นํžˆ ๊ธ‰์ง„์ ์ธ ๋ณ€ํ™”์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด ๊ฒŒ์ž„์€ ํ”Œ๋กœ์šฐ์ฐจํŠธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ ์‹œ๊ฐํ™” ๋ฐฉ๋ฒ• ์ธก๋ฉด์—์„œ ๊ฑฐ์˜ ๋ณ€ํ•จ์—†์ด ๋‘ ๋ฒ„์ „์„ ์ง€์†ํ–ˆ์ง€๋งŒ ์„ธ ๋ฒˆ์งธ ๋ฒ„์ „์—์„œ๋Š” "ํฌ๊ธฐ"ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์šฐ๋ฆฌ๋Š” ๋˜ํ•œ ๊ฒŒ์ž„์„ ํ•™๊ต ์ปค๋ฆฌํ˜๋Ÿผ ๋ฐ ๊ต๊ณผ์„œ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์•„์ด๋“ค์ด ์ดˆ๊ธฐ ๋‹จ๊ณ„์—์„œ ๋ฐฐ์šฐ๋Š” ์–ธ์–ด ๋ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ, ์ฆ‰ ์Šคํฌ๋ž˜์น˜ ๋ฐ Python๊ณผ๋„ ์—ฐ๊ฒฐํ•˜๋ผ๋Š” ์š”์ฒญ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ์šฐ๋ฆฌ ๊ฒŒ์ž„์€ 7~10์„ธ ์–ด๋ฆฐ์ด๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ด๊ฒƒ์ด ๊ฐ€์žฅ ์ˆ˜์š”๊ฐ€ ๋งŽ์€ ํ™˜๊ฒฝ๊ณผ ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ดˆ๊ธฐ ๊ฐœ๋ฐœ ํ…Œ์ด๋ธ”์„ ๋ณด๋ฉด ์šฐ๋ฆฌ๊ฐ€ ๊ฐœ๋ฐœํ•œ ๊ฒƒ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ž‘์—…๋„ ์ˆ˜ํ–‰ํ–ˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŒ์ง€ ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ ๋˜๋Š” ๋ณด๋“œ ๊ต์œก ๊ฒŒ์ž„ Battle of the Golems์˜ ์Šคํฌ๋ž˜์น˜ ๋ฒ„์ „์„ ๋งŒ๋“  ๋ฐฉ๋ฒ•

์ด๋Ÿฌํ•œ ๋ช…๋ น ์นด๋“œ(์ฆ‰, ๊ณจ๋ ˜ ๋กœ๋ด‡์— ๋Œ€ํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ์„ค์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ)์˜ ๊ฐœ๋ฐœ์€ 2017๋…„์— ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹œ ์Šคํฌ๋ž˜์น˜ 2์˜ ์ตœ์‹  ๋ฒ„์ „์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ฃผ์š” ๋ช…๋ น์„ ๋ธ”๋ก ์œ ํ˜•์œผ๋กœ ๋ณ€ํ™˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํŒ์ง€ ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ ๋˜๋Š” ๋ณด๋“œ ๊ต์œก ๊ฒŒ์ž„ Battle of the Golems์˜ ์Šคํฌ๋ž˜์น˜ ๋ฒ„์ „์„ ๋งŒ๋“  ๋ฐฉ๋ฒ•

Python์˜ ์˜ˆ์ œ ๋งต์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํŒ์ง€ ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ ๋˜๋Š” ๋ณด๋“œ ๊ต์œก ๊ฒŒ์ž„ Battle of the Golems์˜ ์Šคํฌ๋ž˜์น˜ ๋ฒ„์ „์„ ๋งŒ๋“  ๋ฐฉ๋ฒ•

๊ทธ๋Ÿฐ ๋‹ค์Œ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด PDF ํŒŒ์ผ์„ ๋ถ€๋ชจ์™€ ๊ต์‚ฌ์—๊ฒŒ ์ œ๊ณตํ–ˆ๊ณ (Python ๋ฒ„์ „์€ ์•„์ง ๊ฒŒ์‹œํ•  ๊ณ„ํš์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ณ„์† ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค) ๊ฒฐ๊ณผ์ ์œผ๋กœ ์•„์ด๋“ค์ด... ํ˜ผ๋ž€์Šค๋Ÿฌ์›Œ์ง€๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค๋Š” ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ์ด์ „์— ํ˜ผ๋ž€์Šค๋Ÿฌ์› ์ง€๋งŒ ๋กœ๋ด‡์˜ ์œ„์น˜์™€ ํ˜„์žฅ์—์„œ์˜ ๋ฐฉํ–ฅ์— ๋Œ€ํ•ด์„œ๋Š” ๋” ๋งŽ์ด ํ˜ผ๋ž€์Šค๋Ÿฌ์› ์ง€๋งŒ ํŒ€์—์„œ๋Š” ๊ทธ๋ ‡์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค(๋ณต์žกํ•œ ์‚ฌ์ดํด๊ณผ ์„ผ์„œ๊ฐ€ ์žˆ๋Š” ์กฐ๊ฑด์—์„œ ์ตœ๋Œ€). ์ด์ œ ์•„์ด๋“ค์€ ๋‹จ์ˆœํžˆ ๋ช…๋ น์„ ํ˜ผ๋™ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ถ€๋Š” ์Šคํฌ๋ž˜์น˜ ํ™˜๊ฒฝ์„ ๋งˆ์Šคํ„ฐํ•˜๊ธฐ ์ „์— ๊ฒŒ์ž„์„ ์‹œ์ž‘ํ–ˆ๊ณ  ์„ค๋ช… ์•„์ด์ฝ˜์กฐ์ฐจ ๋„์›€์ด ๋˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” Python ๋ช…๋ น์„ ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์ง€๋งŒ ๋ธ”๋ก์— ํ…์ŠคํŠธ ์„ค๋ช…์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ํ…Œ์ŠคํŠธ๊ฐ€ ๋๋‚œ ํ›„, 2018๋…„์€ ๊ฑฐ์˜ ํ†ต๊ณผ๋˜์—ˆ๊ณ , ๊ทธ ๋์— ์‚ฌ์ „ ์ฃผ๋ฌธ์ด ์„ฑ๊ณต์ ์œผ๋กœ ์ถœ์‹œ๋˜์ง€ ์•Š์•˜๊ณ , 2019๋…„์ด ์‹œ์ž‘๋˜์—ˆ์œผ๋ฉฐ, ์Šคํฌ๋ž˜์น˜์˜ 3๋ฒˆ์งธ ๋ฒ„์ „์œผ๋กœ์˜ ์ „ํ™˜์ด ์ด๋ฃจ์–ด์กŒ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์ƒˆ๋กœ์šด ๋ธ”๋ก ์ƒ‰์ƒ ์ง€๋„๋ฅผ ๋น„์ถ•ํ•˜๊ณ  ๋ชจ๋“  ์ง€๋„๋ฅผ ๋‹ค์‹œ ๊ทธ๋ ค์„œ ๊ฐœ์„ ํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค(๊ทธ๋ฆฌ๊ณ  ์Šคํฌ๋ž˜์น˜ ํ‚คํ‹ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ํ—ˆ์šฉ๋˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค).

๊ฒฐ๊ณผ๋Š” ์ด ์˜ˆ์—์„œ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์™ผ์ชฝ์—๋Š” "๊ณ ์ „์ ์ธ" ๊ณจ๋ ˜ ์ „ํˆฌ ์ง€๋„๊ฐ€ ์žˆ๊ณ  ์˜ค๋ฅธ์ชฝ์—๋Š” ์Šคํฌ๋ž˜์น˜ ํ‘œํ˜„์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํŒ์ง€ ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ ๋˜๋Š” ๋ณด๋“œ ๊ต์œก ๊ฒŒ์ž„ Battle of the Golems์˜ ์Šคํฌ๋ž˜์น˜ ๋ฒ„์ „์„ ๋งŒ๋“  ๋ฐฉ๋ฒ•

๊ณ ์ „์ ์ธ ๋ธ”๋ก ๋‹ค์ด์–ด๊ทธ๋žจ์—์„œ ์ž๋ž€ ์„ฑ์ธ์€ ์ƒํ™ฉ์ด ์ง€๊ธˆ์€ ๋” ๋‚˜๋น ์กŒ๋‹ค๊ณ  ์ฃผ์žฅํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์–ด๋ฆฐ์ด๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•œ ํ…Œ์ŠคํŠธ์—์„œ๋Š” ์ด ๋ฒ„์ „์—์„œ ์นด๋“œ๋ฅผ ์ž˜ ์ธ์‹ํ•˜๊ณ  ์ปดํ“จํ„ฐ์™€ ํŒ์ง€ ํ™˜๊ฒฝ ์‚ฌ์ด์— ์œ ์‚ฌ์ ์„ ๊ทธ๋ฆฌ๋Š” ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๊ฐ€ ํ˜„๋ช…ํ•˜๊ฒŒ ์กฐ์–ธํ•œ ์œ ์ผํ•œ ๊ฒƒ์€ ์ƒ‰์ƒ ๋Œ€๋น„๋ฅผ ๋†’์ด๊ณ (๋ฐฐ๊ฒฝ์„ ๋” ๋ฐ๊ฒŒ ๋งŒ๋“ค๊ณ  ๋ธ”๋ก ์ƒ‰์ƒ์„ ๋” ๋ฐ๊ฒŒ ๋งŒ๋“ค์–ด) ์ธํฌ๊ทธ๋ž˜ํ”ฝ ๋ณต์ œ ์•„์ด์ฝ˜์˜ ํฌ๊ธฐ๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

์ƒˆ ํŒ์˜ ์ œ๋ชฉ์€ "๊ณจ๋ ˜์˜ ์ „ํˆฌ. ์นด๋“œ ๋ฆฌ๊ทธ ์˜ค๋ธŒ ํŒŒ๋กœ๋ด‡โ€œ๊ทธ๋ฆฌ๊ณ  ํŒ€ ์นด๋“œ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ ์™ธ์—๋„ ์šฐ๋ฆฌ๋Š” ๊ฒฝ๊ธฐ์žฅ ๊ตฌ์„ฑ ์›๋ฆฌ, ๋กœ๋ด‡ ๊ตฌ์„ฑ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์žฌ์ž‘์—…ํ•˜๊ณ  ๊ธฐํƒ€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜์—ฌ ๊ฒŒ์ž„์„ "์ตœ๋Œ€ 1000๋ฃจ๋ธ”"์ด๋ผ๋Š” ์‹ฌ๋ฆฌ์  ํ•œ๋„์— ๋งž์ถœ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ๊ฒŒ์ž„๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ถœ์‹œํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ํฌ๋ผ์šฐ๋“œ ํŽ€๋”ฉ์„ ํ†ตํ•ด ๊ทธ๋ฆฌ๊ณ  ๋‹น์‹ ์ด ๊ฒŒ์ž„์„ ์ง€์›ํ•œ๋‹ค๋ฉด ์šฐ๋ฆฌ๋Š” ๊ธฐ์  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํŒ์ง€ ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ ๋˜๋Š” ๋ณด๋“œ ๊ต์œก ๊ฒŒ์ž„ Battle of the Golems์˜ ์Šคํฌ๋ž˜์น˜ ๋ฒ„์ „์„ ๋งŒ๋“  ๋ฐฉ๋ฒ•

์šฐ๋ฆฌ๋Š” ์ด ๋ฒ„์ „์ด ์„ฑ๊ณตํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ผ๋ฉฐ Battle of Golems์˜ "ํด๋ž˜์‹" ๋ฒ„์ „๊ณผ ๊ฐ™์€ Python(๋ฐ ๊ณง Java) ๋ช…๋ น ์นด๋“œ๋ฅผ ๋งŒ๋“ค๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ž์œ ๋กญ๊ฒŒ ๋ฐฐํฌ ๋ฐ ๋‹ค์šด๋กœ๋“œ ๊ฐ€๋Šฅ.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€