[๋ฐฑ์ค€] ๐Ÿ’Ž ๋‹ค์ด์•„๋ชฌ๋“œ ๋‹ฌ์„ฑ ๋ฐ Tip


๐Ÿ’ก ๋‹ค์ด์•„ ๋‹ฌ์„ฑ

์˜ฌํ•ด ๋ชฉํ‘œ ์ค‘ ํ•˜๋‚˜์˜€๋˜ ๋ฐฑ์ค€ solved.ac ๋‹ค์ด์•„ ํ‹ฐ์–ด๋ฅผ ๋‹ฌ์„ฑํ–ˆ๋‹คโ€ฆ

๋‚ด Solved.ac

์ƒ์œ„ 100๋ฌธ์ œ๋ฅผ ๊ณจ๋“œ ์—†์ด ์ฑ„์šฐ๊ณ  ๋‚˜๋‹ˆ ๋งˆ์Œ์ด ํŽธ์•ˆํ•ด์กŒ๋‹คโ€ฆ

๊ทผ๋ฐ ์™œ์ด๋ฆฌ ๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœํ•„ ๋ฐฐ๊ฒฝ์€ ๊ทธ๋ฆผ์ฒด๊ฐ€ ๋•ํ›„ ๊ฐ™์€์ง€โ€ฆ ๋ง˜์—๋“œ๋Š” ๋ฐฐ๊ฒฝ์ด ์—†๋‹ค.


๐Ÿ’ก ํƒœ๊ทธ ๋ถ„ํฌ

์‚ฌ์‹ค ๋‹ค์ด์•„ ํ‹ฐ์–ด๋ฅผ ๊ฐ€๋Š” ๋ฐฉ๋ฒ• ์ค‘ ๊ฐ€์žฅ โ€˜๋น ๋ฅธโ€™ ๋ฐฉ๋ฒ•์€ ์ˆ˜ํ•™์„ ํ™œ์šฉํ•ด์„œ ์–ด๋ ค์šด ์ˆ˜ํ•™๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š”๊ฒŒ ์•„๋‹๊นŒ ํ•œ๋‹ค.

์–ด๋ ค์šด ์ˆ˜ํ•™ ์ง€์‹์ด ๋“ค์–ด๊ฐ€๋ฉด ๊ตฌํ˜„์ด ๋นก์„ธ์ง€ ์•Š๊ณ  ์ฝ”๋“œ๊ฐ€ ์งง์•„๋„ ํ‹ฐ์–ด๊ฐ€ ๋†’์€ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๋ฌผ๋ก  ๊ทธ๊ฒŒ ์‰ฝ๋‹ค๋Š”๊ฑด ์•„๋‹ˆ๋‹ค.

๊ทธ๋ƒฅ ์ฝ”๋”ฉ ์‹ค๋ ฅ์„ ํ‚ค์šฐ๊ณ  ์‹ถ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ˆ˜ํ•™ ๋ฌธ์ œ๋Š” ํ’€์ง€ ์•Š๊ณ  ์ฃผ๋กœ ๋‹จ๊ณ„๋ณ„ ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด์„œ,

๊ฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋ˆŒ๋Ÿฌ๋ณด๊ณ  ์ถ”๊ฐ€๋กœ ํ‘ผ ์‚ฌ๋žŒ์ด ๋งŽ์€ ๋ฌธ์ œ๋“ค์„ ํ’€์–ด๋ณด์•˜๋‹ค.

์ง€๊ธˆ ๊ทธ๋ž˜ํ”„๋ฅผ ๋ณด๋ฉด ๊ทธ๋ฆฌ๋””๊ฐ€ ์ข€ ๋ถ€์กฑํ•˜๋‹ค. ๋Œ€ํšŒ ์ถœ์ „์„ ์œ„ํ•ด์„œ๋Š” ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํŒŒ์•ผํ• ๊ฑฐ๊ฐ™๋‹ค.

๊ฐ€๋” ์‹ค๋ฒ„ ๊ทธ๋ฆฌ๋”” ๋ฌธ์ œ๋„ โ€œ์ด๊ฑฐ ๋„๋Œ€์ฒด ์–ด๋–ป๊ฒŒ ํ’€์ง€โ€ ํ•˜๋Š” ๋‚  ๋ณด๋ฉด ๋จธ๋ฆฌ๊ฐ€ ์•„ํ”„๋‹คโ€ฆ

์•ž์œผ๋กœ ์‹ค๋ฒ„~๊ณจ๋“œ ๋‚œ์ด๋„ ๊ทธ๋ฆฌ๋”” ๋ฌธ์ œ๋“ค์„ ํ’€์–ด๋ด์•ผ๊ฒ ๋‹ค.


๐Ÿ’ก C++? Python?

์ฒ˜์Œ์— Python์œผ๋กœ ์‹œ์ž‘ํ–ˆ๋‹ค๊ฐ€, ์ปด๊ณต ๊ณต๋ถ€ ํ•˜๋ ค๋ฉด ์–ด์ฐจํ”ผ C์— ์ต์ˆ™ํ•ด์•ผ๋งŒ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ด์„œ C++๋กœ ์ „ํ™˜ํ–ˆ๋‹ค.

๋ฌธ์ž์—ด ๋ฌธ์ œ๋งŒ Python์œผ๋กœ ํ‘ผ๋‹ค๋Š” ๊ณ ์ˆ˜๋ถ„๋“ค์ด ์žˆ๋Š”๋ฐ, ๊ฐœ์ธ ์„ ํƒ์ด๋‹ค.

(๋‚œ ๋ง‰์ƒ ๊ทธ๋Ÿด๋•Œ ํŒŒ์ด์ฌ ์“ฐ๋ ค๋ฉด ๋˜ ์˜ค๋žœ๋งŒ์ด๋ผ ์ต์ˆ™ํ•˜์ง€๊ฐ€ ์•Š์•„์„œ ๊ทธ๋ƒฅ C++๋กœ ํ•œ๋‹ค.)

Rust๋„ ์š”์ฆ˜ ๋œจ๊ธฐ ๋•Œ๋ฌธ์— ํ•˜๋Š” ์‚ฌ๋žŒ์ด ๋งŽ๋‹ค. ํ•˜์ง€๋งŒ ๋‹ค์Œ ์ด์œ ์—์„œ C++์„ ๋‚œ ๋” ์ถ”์ฒœํ•œ๋‹ค.

๋ฐฐ์šฐ๋Š” ์ž…์žฅ์—์„œ๋Š” ๋‹ค๋ฅธ์‚ฌ๋žŒ์˜ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด์„œ ๋ฐฐ์›Œ๊ฐ€๋Š” ์ ์ด ์žˆ์–ด์•ผ ํ•˜๋Š”๋ฐ ์ด ์ ์—์„œ C++์„ ์ด๊ธธ ์–ธ์–ด๋Š” ์—†๋‹ค.

์ฒ˜์Œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ณต๋ถ€ํ• ๋•Œ๋„, ๊ตฌ๊ธ€๋ง์„ ํ•ด์„œ ๋‹ค๋ฅธ์‚ฌ๋žŒ์˜ ์ฝ”๋“œ๋ฅผ ๋ณผ ๊ฒƒ์ด๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด์„œ ๊ตฌ๊ธ€์— โ€œ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ ํŒŒ์ด์ฌโ€์„ ๊ฒ€์ƒ‰ํ•˜๋Š”๊ฒƒ๋ณด๋‹ค, โ€œ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ C++โ€์„ ๊ฒ€์ƒ‰ํ•˜๋ฉด

๋” ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋„ ๋งŽ๊ณ , ๋งŽ์€ ๋งŒํผ ์ข‹์€ ์„ค๋ช…๋“ค์ด ์ด๋ฏธ ๋‚˜์™€์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ณต๋ถ€ํ•˜๋Š”๋ฐ ๋„์›€์ด ๋œ๋‹ค.

๋ฌผ๋ก  ์‚ฌ๋žŒ๋งˆ๋‹ค ๋‹ค๋ฅด๊ฒ ์ง€๋งŒ, ์ปด๊ณต ์ž…ํ•™ํ•œ์ง€ ๋ณ„๋กœ ์•ˆ๋˜์—ˆ๊ฑฐ๋‚˜, ์ปด๊ณต ์ž…ํ•™์„ ๋ฐ”๋ผ๋Š” ๋ถ„๋“ค, ์ฝ”ํ…Œ ์ค€๋น„ํ•˜๋Š” ๋ถ„๋“ค์—๊ฒ ์ด๋Ÿฐ ์ด์œ ๋กœ C++์„ ์ถ”์ฒœํ•œ๋‹ค.


๐Ÿ’ก ๊ณต๋ถ€ ๋ฐฉ๋ฒ• ์ถ”์ฒœ

๋ฐฑ์ค€์— ๋ฌธ์ œ๋ฅผ ๋ˆŒ๋Ÿฌ๋ณด๋ฉด โ€œ๋‹จ๊ณ„๋ณ„๋กœ ํ’€์–ด๋ณด๊ธฐโ€ ํŒŒํŠธ๊ฐ€ ์žˆ๋‹ค.

๊ณต๋ถ€ํ•˜๊ธฐ ์ข‹๊ฒŒ ์ˆœ์„œ๊ฐ€ ์งœ์—ฌ์ ธ ์žˆ๋‹ค.

์ˆœ์„œ๋Œ€๋กœ ์ญ‰ ํ’€์–ด๋ณด๋ฉด์„œ ์ƒˆ๋กœ์šด ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋‚˜์˜ค๋ฉด ๊ตฌ๊ธ€๋ง์„ ํ•˜์ž.

๊พธ์ค€ํžˆ ๊ณต๋ถ€ํ•˜๋‹ค๋ณด๋ฉด ๋ฌธ์ œํ‘ธ๋Š” ๋ง›์ด ์žˆ์„ ๊ฒƒ์ด๋‹ค. (๋‚˜๋งŒ ๊ทธ๋Ÿฐ๊ฐ€)

๊ณจ๋“œ ๋ฌธ์ œ๋ฅผ ๋“ค์–ด๊ฐ€๋‹ค๋ณด๋ฉด ๋ชจ๋ฅด๊ฒ ๋Š” ๋ฌธ์ œ๊ฐ€ ์ž์ฃผ ์ƒ๊ธธํ…๋ฐ, ์ ๋‹นํžˆ ์ƒ๊ฐํ•ด๋ณด๋‹ค๊ฐ€ ์•„์˜ˆ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์„ ๋ชจ๋ฅด๊ฒ ์œผ๋ฉด ๊ตฌ๊ธ€๋ง ํ•˜์ž!

์•„์ง ๋ฐฐ์šฐ๋Š” ๋‹จ๊ณ„์ด๋ฏ€๋กœ ์ „ํ˜€ ์ƒ๊ฐ๋ชปํ•  ํ’€์ด๋ฒ•์ด ์žˆ์„ ์ˆ˜ ์žˆ๋Š”๋ฐ ์˜ค๋ž˜ ๋ถ™์žก๊ณ  ์žˆ๋Š”๊ฒƒ๋„ ์‹œ๊ฐ„ ๋‚ญ๋น„์ด๋‹ค.

๊ทธ ๋‹จ๊ณ„์— ๋‚˜์™€์žˆ๋Š”๋ฐ ๋ญ”๊ฐ€ ์ค‘์š”ํ•œ๊ฑฐ ๊ฐ™๊ณ  ์ดํ•ด๊ฐ€ ๋ถ€์กฑํ•˜๋ฉด ๊ทธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๋ฌธ์ œ๋ฅผ ๋” ํ’€์–ด๋ณด์ž.

๋‚œ ์ฐธ๊ณ ๋กœ BFS, ์ตœ๋‹จ๊ฑฐ๋ฆฌ ๋Š” ๋„ˆ๋ฌด ์ค‘์š”ํ•ด๋ณด์—ฌ์„œ ์ด ๋‹จ๊ณ„๋ณ„ ๋ฌธ์ œ ์™ธ์—๋„ ๋งŽ์ด ํ’€์–ด๋ดค๊ณ ,

์œ ๋‹ˆ์˜จํŒŒ์ธ๋“œ ๋‹จ๊ณ„๋ถ€ํ„ฐ๋Š” ์–ด๋А์ •๋„ ๋‚œ์ด๋„๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค๋ฅธ ๋ฌธ์ œ๋ฅผ ๋” ํ’€์–ด๋ณด๊ณ ์‹ถ์–ด์„œ ๋ชจ๋‘ ๋” ํ’€์–ด๋ดค๋‹ค.


โ—โ— ์ ˆ๋Œ€๋กœ ์ฝ”๋“œ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ถ™์—ฌ์™€์„œ ์ œ์ถœํ•˜์ง€ ๋ง์ž.

๋‹น์—ฐํžˆ ์ดˆ๋ณด์ผ ๋•Œ๋Š” ๋ณต๋ถ™์„ ์•„์˜ˆ ํ•˜์ง€ ์•Š๋Š”๊ฒŒ ์ข‹๋‹ค.

ํ•˜์ง€๋งŒ, ๊ณจ๋“œ ํ‹ฐ์–ด ์ด์ƒ๋ถ€ํ„ฐ๋Š” ์•„๋งˆ ๊ตฌํ˜„๋„ ์–ด๋А์ •๋„ ํ• ํ…๋ฐ ๋ชจ๋‘ ๋”ฐ๋ผ ์น˜๋Š”๊ฑด ์‹œ๊ฐ„๋‚ญ๋น„๋ผ๊ณ  ๋ณธ๋‹ค.

๋‹ค๋ฅธ์‚ฌ๋žŒ์˜ ์ฝ”๋“œ๋ฅผ ๊ฐ€์ ธ์˜ฌ ๋•Œ๋Š” ๋ณต๋ถ™์€ ํ•ด๋„ ๋˜์ง€๋งŒ,

๋ถ™์—ฌ๋„ฃ์€ ํ›„ ํ•˜๋‚˜ํ•˜๋‚˜ ์ฝ์–ด๋ณด๋ฉด์„œ, ๋‚ด๊ฐ€ ์›๋ž˜ ์“ฐ๋˜ ์ฝ”๋“œ ์Šคํƒ€์ผ๋กœ ๋ฐ”๊พธ๊ณ , ๋ณ€์ˆ˜๋ช…๋„ ๋ฐ”๊พธ์ž.

๊ทธ๋Ÿฌ๋‹ค ๋ณด๋ฉด ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•˜๊ฒŒ ๋œ๋‹ค.

๋‚˜๋Š” ์ฐธ๊ณ ๋กœ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์ฝ”๋“œ๋ฅผ ๊ฐ€์ ธ์™€์„œ ๋ฐ”๊พธ๋ฉด์„œ๋„, ์ด๊ฑฐ๋ณด๋‹ค ๋” ์ตœ์ ํ™” ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์—†์„๊นŒ?

๊พธ์ค€ํžˆ ์˜์‹ฌํ•˜๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.


โ—โ— ์ฃผ์„์„ ๋งŽ์ด ๋‹ฌ์ž

์ด๊ฑด ๋ญ ๋ชจ๋“  ์‚ฌ๋žŒ์ด ๋งํ•  ๊ฒƒ์ด๋‹ค. ์ง€๊ธˆ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋Œ€ํšŒ ๋‚˜๊ฐ€์„œ 1๋ถ„ 1์ดˆ๊ฐ€ ์ค‘์š”ํ•œ๊ฒŒ ์•„๋‹ˆ๋ฉด, ์ฃผ์„์„ ๊ณ„์† ๋‹ฌ์ž.

์ฝ”๋“œ ์ฃผ์„ ๋ฟ๋งŒ์ด ์•„๋‹ˆ๋ผ, ๊ณต๋ถ€ํ•˜๋Š” ์ž…์žฅ์—์„œ๋Š” ๋‚ด๊ฐ€ ์‹ค์ˆ˜ํ–ˆ๋˜ ๋ถ€๋ถ„, ์‹ค์ˆ˜ํ–ˆ๋˜ ์ด์œ , ๋ชฐ๋ผ์„œ ๊ตฌ๊ธ€๋งํ–ˆ๋˜ ์•„์ด๋””์–ด,

๋ชจ๋‘ ๋‹ค ์ ์–ด์ฃผ์ž. ๋‹ค์‹œ ๊ทธ ์ฝ”๋“œ๋ฅผ ๋ณผ ์ผ์ด ์—†๋”๋ผ๋„, ์ฃผ์„์„ ์น˜๋ฉด์„œ ํ•œ๋ฒˆ ๋” ๋А๋ผ๋Š” ๊ฒƒ์— ์˜๋ฏธ๊ฐ€ ์žˆ๋‹ค.


โ—โ— ๋งž์•˜๋‹ค๊ณ  ๋์ด ์•„๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ์ •๋ง ์ถ”์ฒœํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

๋‚˜๋Š” ์ •๋ง ๊ฑฐ์ง“๋ง ์•ˆ์น˜๊ณ  ๋ธŒ๋ก ์ฆˆ 5 ๋ฌธ์ œ๋ผ๋„, ๋งž์•˜์Šต๋‹ˆ๋‹ค!! ๊ฐ€ ๋‚˜์˜ค๋ฉด ๋ฐ”๋กœ ๋„˜์–ด๊ฐ€์ง€ ์•Š๋Š”๋‹ค.

๋ฐฑ์ค€์—๋Š” ์ฑ„์  ํ˜„ํ™ฉ์—์„œ, ๋‹ค๋ฅธ์‚ฌ๋žŒ์˜ ์ฝ”๋“œ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

์ž์‹ ์ด ํƒํ•œ ์–ธ์–ด๋กœ ์„ ํƒํ•˜๊ณ  ๋งž์•˜์Šต๋‹ˆ๋‹ค ์˜ต์…˜์„ ์„ ํƒํ•˜๊ณ  ๊ฒ€์ƒ‰ํ•ด์ฃผ์ž.

์ด๋ ‡๋“ฏ ๊ฐ™์€ ๋ฌธ์ œ์ด๊ณ , ๊ฐ™์€ ์ •๋‹ต์ด๋ผ๋„, ์ฝ”๋“œ์˜ ์†๋„๋Š” ๋ฌธ์ œ์— ๋”ฐ๋ผ ํฌ๊ฒŒ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๋‹ค.

๋‚ด๊ฐ€ ์ œ์ถœํ•œ ์ฝ”๋“œ์˜ ์‹œ๊ฐ„์ด ๋‚จ๋“ค๋ณด๋‹ค ๋А๋ฆฐ๊ฑด ์•„๋‹Œ์ง€ ์ฒดํฌํ•˜์ž.

ํ›จ์”ฌ ๋น ๋ฅธ ์ฝ”๋“œ๊ฐ€ ์žˆ๋‹ค๋ฉด, ์–ด๋–ค ๋ถ€๋ถ„์ด ๋‹ฌ๋ผ์„œ ๋น ๋ฅธ์ง€๋ฅผ ๋ˆŒ๋Ÿฌ๋ณด๊ณ  ๋น„๊ตํ•ด๋ณด๊ณ  ๋‚ด ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ด๋ณด์ž.

ํ•ญ์ƒ ์ด๋ ‡๊ฒŒ ํ•ด์„œ ๋‚จ๋“ค์ฒ˜๋Ÿผ ๋น ๋ฅธ ์‹œ๊ฐ„์ด ๋‚˜์˜ฌ๋•Œ๊นŒ์ง€ ๋‚ด ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ด์„œ ์ œ์ถœํ–ˆ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด์„œ ์–ด๋–ค ๋ถ€๋ถ„์—์„œ ์‹œ๊ฐ„๋‚ญ๋น„๊ฐ€ ๋˜๊ณ ์žˆ๋Š” ๊ฑด ์•„๋‹Œ์ง€, ์–ด๋–ค ์ตœ์ ํ™” ํ…Œํฌ๋‹‰์ด ์žˆ๋Š”์ง€๋ฅผ ์ƒ๊ฐํ•˜๋ฉด์„œ ์‹ค๋ ฅ์ด ๋А๋Š” ๊ฒƒ์ด๋‹ค.

๋‚˜์ค‘์—๋Š” ๋ฉ”๋ชจ๋ฆฌ๋„ ๋น„๊ตํ•ด๋ณด๊ณ , ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋‚ญ๋น„ํ•˜๊ณ  ์žˆ๋Š”์ง€, ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋Š”์ง€ ์ƒ๊ฐ๋„ ํ•ด๋ณด์ž.

์œ„ ์‚ฌ์ง„์ฒ˜๋Ÿผ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์ฝ”๋“œ์— ์‹œ๊ฐ„์ด ๋” ์ ์€๊ฒŒ ์žˆ์–ด์„œ ๊ทธ ์ฝ”๋“œ๋ฅผ ๋ณด๊ณ , ๊ทธ ์‚ฌ๋žŒ์˜ ์ฝ”๋“œ๋ฅผ ์ฐธ๊ณ ํ•ด์„œ ๋‚ด ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ด์„œ ์ œ์ถœํ–ˆ๋‹ค.

๋ฉ”๋ชจ๋ฆฌ์™€ ์‹œ๊ฐ„์ด ์ ์–ด์งˆ๋•Œ๊นŒ์ง€ ๊ณ„์† ๋ฐ˜๋ณตํ•ด๋ณด์ž. ๋ฐ˜๋ณตํ•˜๋‹ค ๋ณด๋ฉด ์‹ค๋ ฅ์ด ๋งŽ์ด ์ข‹์•„์งˆ ๊ฒƒ์ด๋‹ค.

์ด๋ ‡๊ฒŒ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด ๋˜ ์ข‹์€ ์ ์ด ๋‚ด๊ฐ€ ๋ชจ๋ฅด๋˜ stl์ด๋‚˜ ์ง€์‹์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด memset์ด๋ผ๋˜๊ฐ€, lowerbound ๋“ฑ๋“ฑ ์•„์ฃผ ๋งŽ์€ STL,

struct๋‚˜ class๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š” ๋‹ค๋ฅธ ๋ถ„๋“ค์˜ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด์„œ

์–ด? ์ด๊ฑด ๋ญ์ง€? ํ•˜๊ณ  ๊ตฌ๊ธ€๋ง ํ•ด๋ณด๊ณ  ๋‚ด๊ฒƒ์œผ๋กœ ๋งŒ๋“ค์–ด๊ฐ€๋Š” ๊ฒƒ์ด๋‹ค.

๋‚ด ์ฝ”๋“œ๋งŒ ๋ณด๊ณ  ์ œ์ถœํ•˜๊ณ  ๋์ด๋ผ๋ฉด ์ด๋Ÿฐ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ์• ์šฉํ•˜๋Š” ๊ฒƒ๋“ค์„ ์•Œ์ง€ ๋ชปํ–ˆ์„ ๊ฒƒ์ด๋‹ค.


๐Ÿ’ก ์•ž์œผ๋กœ๋„ ํ‹ฐ์–ด๋ฅผ ์˜ฌ๋ฆด๊ฑด๊ฐ€?

์ ˆ๋Œ€ ์•„๋‹ˆ๋‹ค. ์• ์ดˆ์— ๋ฐฑ์ค€์„ ์‹œ์ž‘ํ•˜๊ฒŒ ๋œ ๊ณ„๊ธฐ๊ฐ€ ์‚ฌ์‹ค์€ ํœดํ•™์„ ์˜ค๋ž˜ํ•ด์„œ ๊ธฐ๋ณธ ์ฝ”๋”ฉ๋„ ๋‹ค ๊นŒ๋จน์—ˆ์—ˆ๊ณ , ์ปด๊ณต์ธ๋ฐ ๊ทธ๋ž˜๋„ ๊ธฐ๋ณธ์ ์ธ ์ฝ”๋”ฉ์€ ๊ผญ ํ•ด์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ด์„œ ๋ฐฑ์ค€ ๋‹จ๊ณ„๋ณ„ ๋ฌธ์ œ๋ฅผ ํ’€๊ธฐ ์‹œ์ž‘ํ•œ ๊ฒƒ์ด๋‹ค.

์–ด์ฐจํ”ผ ํ‹ฐ์–ด ์‹œ์Šคํ…œ์ƒ ์ด์ œ ๋” ํ‹ฐ์–ด๋ฅผ ์˜ฌ๋ฆฌ๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‹ค์ด์•„ ์ด์ƒ์˜ ๋ฌธ์ œ๋ฅผ ํ’€์–ด์•ผํ•˜๋Š”๋ฐ, ๊ทธ๋ ‡๊ฒŒ ํ•˜๊ธฐ์—” ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด ๋งŽ์ด ํˆฌ์ž๋˜๋Š”๊ฒƒ ๊ฐ™๋‹ค.

์ง€๊ธˆ์€ ๋ณตํ•™ ํ›„ ์ „๊ณต๊ณผ๋ชฉ ํ•™์ ๊ด€๋ฆฌ์— ์‹ ๊ฒฝ์“ฐ๊ณ , ์–ด๋А์ชฝ์œผ๋กœ ์ง„๋กœ๋ฅผ ๊ฐˆ์ง€๊ฐ€ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

์‹œ๊ฐ„ ๋‚ ๋•Œ๋งˆ๋‹ค ๋‚˜์ค‘์— ์ฝ”ํ…Œ ์ •๋„ ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ๊ณจ๋“œ ๋ฌธ์ œ๋“ค์„ ๋น ๋ฅด๊ณ  ์ •ํ™•ํžˆ ํ‘ธ๋Š” ์ •๋„๋งŒ ๋ฐ˜๋ณต ํ•™์Šตํ•  ๊ฒƒ ๊ฐ™๋‹ค.