๐Ÿ“Œ ๋ชฉ์ฐจ

1. ๋ฌธ์ œํ•ด๊ฒฐ๊ณผ์ •
2. ๋ฌธ์ œํ•ด๊ฒฐ์ „๋žต

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ๋Š” ๋ช…์‹œ์ ์ธ ์‹œ๊ฐ„์ œํ•œ๊ณผ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ์ด ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— "์ ์ ˆํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ"๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉด ์‹œ๊ฐ„ ์ œํ•œ ๋‚ด์— ๋™์ž‘ํ•  ์ˆ˜ ์—†๋‹ค.

 

๋”ฐ๋ผ์„œ ์˜ค๋Š˜๋ถ€ํ„ฐ ์ด๋ฅผ ์œ„ํ•œ ์ ์ ˆํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ด๋ฅผ ํ†ตํ•œ ๋ฌธ์ œํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๊ฐ€์žฅ ์œ ๋ช…ํ•œ "์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ•ด๊ฒฐ์ „๋žต(์ข…๋งŒ๋ถ)"์œผ๋กœ ๊ณต๋ถ€๋ฅผ ์‹œ์ž‘ํ•˜๋ คํ•œ๋‹ค. cf) ์ž๋ฃŒ๊ตฌ์กฐ with C++ https://chan4im.tistory.com/category/C%20%7C%20C%2B%2B/Data%20Structure%20%26%20STL

 

'C | C++/Data Structure & STL' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก

์ปดํ“จํ„ฐ๊ณผํ•™, ์ธ๊ณต์ง€๋Šฅ์— ๋Œ€ํ•œ ๊ณต๋ถ€๋ฅผ ์—ด์‹ฌํžˆ ํ•˜๋Š” ๊ณต๋Œ€์ƒ

chan4im.tistory.com

 

 

 

 

 

 

 


1. ๋ฌธ์ œํ•ด๊ฒฐ๊ณผ์ •

1. ๋ฌธ์ œ ์ดํ•ด
๋ง ๊ทธ๋Œ€๋กœ ๋ฌธ์ œ๋ฅผ ์ฝ๊ณ  ์ดํ•ดํ•˜๋Š” ๊ณผ์ •.
์ด๋•Œ, ๋ฌธ์ œ๋ฅผ ์ž˜๋ชป์ฝ๊ฑฐ๋‚˜ ์ž˜๋ชป ์ดํ•ดํ•˜๋Š” ๋“ฑ์˜ ์‹ค์ˆ˜๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š๊ฒŒ ์œ ์˜ํ•ด์•ผํ•จ
2. ์žฌ์ •์˜  &  ์ถ”์ƒํ™”
์ต์ˆ™ํ•œ ์šฉ์–ด๋กœ ๋ฌธ์ œ๋ฅผ ์žฌ์ •์˜ ํ•˜๋Š” ๊ณผ์ •.
(์žฌ์ •์˜). ๋ฌธ์ œ๋ฅผ ์ž์‹ ์˜ ์–ธ์–ด๋กœ ํ’€์–ด์“ฐ๊ณ 
(์ถ”์ƒํ™”). ํ˜„์‹ค์„ธ๊ณ„์˜ ๊ฐœ๋… → ๋‹ค๋ฃจ๊ธฐ ์‰ฌ์šด ์ˆ˜ํ•™์ /์ „์‚ฐํ•™์  ๊ฐœ๋…
์ฆ‰, ์ตœ์ข…์ ์œผ๋กœ ๋ณธ์งˆ๋งŒ์„ ๋‚จ๊ฒจ๋‘๊ณ  ์ถ•์•ฝํ•ด ๋‹ค๋ฃจ๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ.
3. ๊ณ„ํš ์ˆ˜๋ฆฝ(๐ŸŒŸ)
์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ํ•ด๊ฒฐํ•  ๊ฒƒ์ธ์ง€ ๊ณ„ํš์„ ์„ธ์šฐ๋Š” ๊ณผ์ •.
์‚ฌ์šฉํ•  ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๋‹จ๊ณ„
4. ๊ณ„ํš ๊ฒ€์ฆ
์„ธ์šด ๊ณ„ํš์„ ๊ฒ€์ฆํ•˜๋Š” ๊ณผ์ •.
์„ค๊ณ„ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์š”๊ตฌ์กฐ๊ฑด ๋ฐ Cost๋ฅผ ๋งŒ์กฑํ•˜๋Š”์ง€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์ •๋‹น์„ฑ์„ "์ฆ๋ช…"
5. ๊ณ„ํš ์ˆ˜ํ–‰
ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๊ณผ์ •. (https://chan4im.tistory.com/207)
6. ํšŒ๊ณ 
์–ด๋–ป๊ฒŒ ํ’€์—ˆ๋Š”์ง€ ๋Œ์•„๋ณด๊ณ , ๊ฐœ์„ ํ•  ์ ์„ ์ฐพ๋Š” ๊ณผ์ •.
์žฅ๊ธฐ์ ์œผ๋กœ ๊ฐ€์žฅ ํฐ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๋‹จ๊ณ„๋กœ ์ž์‹ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ ๊ณผ์ •์„ ๋Œ์ด์ผœ๋ณด๊ณ  ๊ฐœ์„ ํ•˜๋Š” ๊ณผ์ •.

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

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 


2. ๋ฌธ์ œํ•ด๊ฒฐ์ „๋žต

์–ด๋ ค์šด ๋ฌธ์ œ์ผ์ˆ˜๋ก ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์„ ์‹œ๋„ํ•ด ๋ณด๋ฉด์„œ ๋‹ต์•ˆ์„ ์ฐพ์•„์•ผํ•œ๋‹ค.

์ด์— ๋Œ€ํ•ด ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ•˜๋ฉด ์ข‹์„์ง€์— ๋Œ€ํ•ด ์†Œ๊ฐœํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค.

 

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


์ฒด๊ณ„์ ์ธ ์ ‘๊ทผ)
โˆ™ ์ฒด๊ณ„์ ์ธ ์ ‘๊ทผ์€ ๋ฌธ์ œํ•ด๊ฒฐ์˜ ์ข‹์€ ์‹œ์ž‘์ ์—ญํ• ์„ ํ•˜๋ฉฐ ๋ง‰๋ง‰ํ•œ ๋ฌธ์ œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•œ๋‹ค.

 

 

์ฒด๊ณ„์ ์ธ ์ ‘๊ทผ์„ ์œ„ํ•œ ์งˆ๋ฌธ๋“ค

์•„๋ž˜ ์งˆ๋ฌธ๋“ค์€ ๋งŽ์€ ๋ฌธ์ œ์— ์ ์šฉ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ,

์œ„๋กœ ๊ฐˆ์ˆ˜๋ก ๊ฐ•๋ ฅํ•œ ์งˆ๋ฌธ๋“ค๋กœ, ์•„๋ž˜๋กœ ๊ฐˆ์ˆ˜๋ก ์‚ฌ์šฉ์ด ์ œํ•œ์ ์ธ ์ˆœ์œผ๋กœ ๋ฐฐ์—ด๋˜์–ด ์žˆ๋‹ค.

โˆ™ ์œ ์‚ฌ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณธ ์  ์žˆ์—ˆ๋Š”๊ฐ€?
โˆ™ ๋‹จ์ˆœํ•œ ๋ฐฉ๋ฒ•์—์„œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์„๊นŒ?
โˆ™ ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š”๊ณผ์ •์„ ์ˆ˜์‹ํ™”ํ•  ์ˆ˜ ์žˆ์„๊นŒ?
โˆ™ ๋ฌธ์ œ๋ฅผ ๋‹จ์ˆœํ™”ํ•  ์ˆ˜๋Š” ์—†์„๊นŒ?
โˆ™ ๊ทธ๋ฆผ์œผ๋กœ ๊ทธ๋ ค๋ณผ ์ˆ˜ ์žˆ์„๊นŒ? 
โˆ™ ์ˆ˜์‹์œผ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์„๊นŒ?
โˆ™ ๋ฌธ์ œ๋ฅผ ๋ถ„ํ•ดํ•  ์ˆ˜ ์žˆ์„๊นŒ? 
โˆ™ ๋’ค์—์„œ๋ถ€ํ„ฐ ์ƒ๊ฐํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ’€ ์ˆ˜ ์žˆ์„๊นŒ?
โˆ™ ์ˆœ์„œ๋ฅผ ๊ฐ•์ œํ•  ์ˆ˜ ์žˆ์„๊นŒ?
โˆ™ ํŠน์ •ํ˜•ํƒœ์˜ ๋‹ต๋งŒ์„ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์„๊นŒ?

 

์œ ์‚ฌ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณธ ์  ์žˆ์—ˆ๋Š”๊ฐ€?
ํ˜•ํƒœ๊ฐ€ ๋น„์Šทํ•˜๊ฑฐ๋‚˜ ๊ด€๋ จ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณธ ์ ์ด ์žˆ๋‹ค๋ฉด, ๋น„์Šทํ•œ ์ ‘๊ทผ๋ฒ•์„ ์‚ฌ์šฉํ•  ๊ฒƒ์ด๋ผ ์˜ˆ์ธก๊ฐ€๋Šฅํ•˜๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด ์•„๋ž˜ ์˜ˆ์‹œ๋ฅผ ๋ณด์ž.

โˆ™ ํ•œ ๋„์‹œ๋ฅผ 2๋ฒˆ ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์œผ๋ฉด์„œ ๊ฐ€์žฅ ๊ธด ๊ฒฝ๋กœ๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ
โˆ™ ๊ธฐ์ฐจ๋ฅผ 4๋ฒˆ ์ดํ•˜๋กœ ๊ฐˆ์•„ํƒ€๋ฉด์„œ ๊ฐ€์žฅ ์งง์€ ๊ฒฝ๋กœ๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ
โˆ™ ์—ญ ๊ฐ„ ์šดํ–‰๊ฑฐ๋ฆฌ ์ค‘ ๊ฐ€์žฅ ๊ธด ๊ตฌ๊ฐ„์ด ๊ฐ€์žฅ ์งง์€ ๊ฒฝ๋กœ๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ
โˆ™ ์—ญ ๊ฐ„ ์šดํ–‰๊ฑฐ๋ฆฌ ์ค‘ ๊ฐ€์žฅ ์งง์€ ๊ตฌ๊ฐ„์ด ๊ฐ€์žฅ ๊ธด ๊ฒฝ๋กœ๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ
โˆ™ ๊ฐ€์žฅ ๊ธด ๊ตฌ๊ฐ„๊ณผ ๊ฐ€์žฅ ์งง์€ ๊ตฌ๊ฐ„์˜ ๊ธธ์ด์ฐจ๊ฐ€ ๊ฐ€์žฅ ์ ์€ ๊ฒฝ๋กœ๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ

์ด ์˜ˆ์‹œ๋“ค์˜ ๊ฒฝ์šฐ, ์ตœ๋‹จ๊ฒฝ๋กœ๋ฌธ์ œ๋ฅผ ์‘์šฉํ•ด ํ’€ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋„ ์žˆ๊ณ , ์—†๋Š” ๊ฒƒ๋„ ์žˆ๋‹ค.
๋”ฐ๋ผ์„œ ์ด๋“ค์„ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋‹จ์ˆœํžˆ ์•Œ๊ณ ์žˆ์–ด์„œ๋Š” ์•ˆ๋œ๋‹ค.
"์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๋™์ž‘๊ณผ์ •๊ณผ ์›๋ฆฌ๋ฅผ ์™„์ „ํžˆ ์ดํ•ด"ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค.

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

 

๋‹จ์ˆœํ•œ ๋ฐฉ๋ฒ•์—์„œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์„๊นŒ?
๋น„์Šทํ•œ ๋ฌธ์ œ๋ฅผ ๋ณธ ์  ์—†๊ฑฐ๋‚˜ ํ•ด๋ฒ•์ด ์ ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด, ๋ฌธ์ œํ•ด๊ฒฐ์„ ์œ„ํ•ด์„œ ์–ด๋–ป๊ฒŒ ์‹œ์ž‘ํ•ด์•ผํ• ๊นŒ?
์ด ์ฑ…์—์„œ ์†Œ๊ฐœ๋˜๋Š” ๋งŽ์€ ๋ฌธ์ œํ’€์ด๋ฐฉ๋ฒ•์€ "๋ฌด์‹ํ•˜๊ฒŒ ํ’€ ์ˆ˜ ์žˆ์„๊นŒ?"๋ผ๋Š” ์งˆ๋ฌธ์—์„œ ์‹œ์ž‘๋œ๋‹ค.
์ฆ‰, Cost๋ฅผ ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ๋ฌธ์ œํ•ด๊ฒฐ์„ ์œ„ํ•œ ๊ฐ€์žฅ๋‹จ์ˆœํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค.
๋”ฐ๋ผ์„œ ์–ด๋ ค์šด ๋ฌธ์ œ๋ฅผ ์ ‘ํ–ˆ์„ ๋•Œ, ํ•œ ๋ฒˆ์ฏค ์‹œ๋„ํ•ด๋ณผ ๋งŒํ•˜๋‹ค. (โˆต ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํšจ์œจ์„ฑ์˜ ๊ธฐ์ค€์„ ์„ ์ •ํ•˜๊ธฐ ๋•Œ๋ฌธ.)

๋ณดํ†ต ์™„์ „ํƒ์ƒ‰(Exhaustive Search; Brute Force Search)๋กœ ๋ชจ๋“  ๋ฌธ์ œ๋ฅผ ๊ฑฐ์˜ ํ’€ ์ˆ˜ ์žˆ์ง€๋งŒ,
์กฐ๊ธˆ ๋” ์ œํ•œ์„ ์ƒ๊ฐํ•ด ๋‚ด๋ฉด DFS, BFS๋“ฑ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ ์ง„์ ์œผ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜๋“ค์„ ์ƒ๊ฐํ•˜๋ฉฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š”๊ณผ์ •์„ ์ˆ˜์‹ํ™”ํ•  ์ˆ˜ ์žˆ์„๊นŒ?
๋ฌผ๋ก , ์ ์ง„์ ์ธ ์ ‘๊ทผ๋ฐฉ์‹์ด ๋งŒ๋Šฅ์€ ์•„๋‹ˆ๋‹ค.
๊ธฐ์กด๊ณผ๋Š” ์™„์ „ํžˆ ์ƒˆ๋กœ์šด ๋ฐฉํ–ฅ์—์„œ ์ ‘๊ทผํ•ด์•ผ ํ’€๋ฆฌ๋Š” ๋ฌธ์ œ๋“ค๋„ ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
์ด๋•Œ, ์ž์‹ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ ๊ณผ์ •์„ ๊ณต์‹ํ™”ํ•ด ๋‹ต์„ ๋งŒ๋“œ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ๊ฐ€ ํ”ํžˆ ์žˆ๋‹ค.

 

๋ฌธ์ œ๋ฅผ ๋‹จ์ˆœํ™”ํ•  ์ˆ˜๋Š” ์—†์„๊นŒ?
์•„๋ž˜ ๋ฐฉ๋ฒ•์ฒ˜๋Ÿผ ๋ฌธ์ œ์˜ ์ข€ ๋” ์‰ฌ์šด ๋ณ€ํ˜•ํŒ์„ ๋งŒ๋“ค์–ด ๋‹จ์ˆœํ™”ํ•œ ๋’ค, ์ด๋ฅผ ๋จผ์ € ํ’€์–ด๋ณด๋Š” ๊ฒƒ์ด๋‹ค.
โˆ™ ๋ณ€์ˆ˜์˜ ์ˆ˜๋ฅผ ์ค„์ด๊ฑฐ๋‚˜
โˆ™ ๋‹ค์ฐจ์›์„ 1์ฐจ์›์œผ๋กœ ์ค„์ด๋Š” ๋“ฑ 
์ด๋•Œ ๋‹จ์ˆœํ™”๋œ ๋ฌธ์ œ์˜ ํ•ด๋ฒ•์ด ๊ธฐ์กด ๋ฌธ์ œ์˜ ํ•ด๋ฒ•์— ๋Œ€ํ•œ ์ง๊ด€์ด๋‚˜ ๊ธฐ์กด ๋ฌธ์ œ์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์„ ์ด๋Œ์–ด๋‚ผ ์ˆ˜๋„ ์žˆ๋‹ค.

 

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

 

์ˆ˜์‹์œผ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์„๊นŒ?
๊ฐ€๋Šฅํ•œ ํ•œ ์ง๊ด€์„ ์–ป๊ธฐ ์ข‹์€ ๋ฐฉํ–ฅ์œผ๋กœ ์‚ฌ๊ณ ๋ฅผ ์ „๊ฐœํ•˜๋Š” ๋‹ค๋ฅธ ์ ‘๊ทผ ๋ฐฉ์‹๊ณผ๋Š” ๋ฐ˜๋Œ€๋กœ,
ํ‰๋ฌธ์œผ๋กœ ์ ํžŒ ๋ฌธ์ œ๋ฅผ ์ˆ˜์‹์œผ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๊ฒƒ ๋˜ํ•œ ๋„์›€์ด ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์กด์žฌํ•œ๋‹ค.
์ˆ˜์‹์œผ๋กœ ์ „๊ฐœ, ์ถ•์•ฝํ•˜๋Š” ๊ณผ์ •์€ ์ˆœ์ˆ˜ ์ˆ˜ํ•™์  ์กฐ์ž‘์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š”๋ฐ ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

๋ฌธ์ œ๋ฅผ ๋ถ„ํ•ดํ•  ์ˆ˜ ์žˆ์„๊นŒ?
๋˜ ๋‹ค๋ฅธ ์ค‘์š”ํ•œ ์ ‘๊ทผ ๋ฐฉ์‹์€ ๋” ๋‹ค๋ฃจ๊ธฐ ์‰ฌ์šด ํ˜•ํƒœ๋กœ ๋ฌธ์ œ๋ฅผ ๋ณ€ํ˜•ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์ธ ์˜ˆ์‹œ๋กœ "๋ฌธ์ œ์˜ ์ œ์•ฝ์กฐ๊ฑด์„ ๋ถ„ํ•ด"ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

 

๋’ค์—์„œ๋ถ€ํ„ฐ ์ƒ๊ฐํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ’€ ์ˆ˜ ์žˆ์„๊นŒ?
๋ฌธ์ œ์— ๋‚ด์žฌ๋œ ์ˆœ์„œ๋ฅผ ๋ฐ”๊ฟ”๋ณด๋Š” ๊ฒƒ์œผ๋กœ, ์ด ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ๋Œ€ํ‘œ์  ์˜ˆ์‹œ๊ฐ€ ๋ฐ”๋กœ ์‚ฌ๋‹ค๋ฆฌํƒ€๊ธฐ ๊ฒŒ์ž„์ด๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด A,B,C,D๋ผ๋Š” ์‚ฌ๋žŒ๋“ค์ด ์žˆ๊ณ , 1,2,3,4์œ„์— ๋Œ€ํ•ด ์‚ฌ๋‹ค๋ฆฌ ํƒ€๊ธฐ๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ์ง„ํ–‰ํ–ˆ๋‹ค ํ•˜์ž.
์ด๋•Œ, ๊ฐ€์žฅ ๋น ๋ฅด๊ฒŒ 1์œ„์ธ ์‚ฌ๋žŒ์„ ์•Œ์•„๋‚ด๋ ค๋ฉด ๋‹น์—ฐํžˆ ๊ฑฐ๊พธ๋กœ ์˜ฌ๋ผ๊ฐ€๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ๋น ๋ฅด๋‹ค.
์ฆ‰, A→B๋Š” ์–ด๋ ต์ง€๋งŒ, B→A๋กœ ๊ฐ€๋Š” ๋ฐฉ๋ฒ•์€ ์ฐพ๊ธฐ ์‰ฌ์šด ๋ฌธ์ œ๋“ค์ด ์กด์žฌํ•œ๋‹ค.

 

์ˆœ์„œ๋ฅผ ๊ฐ•์ œํ•  ์ˆ˜ ์žˆ์„๊นŒ?
์ˆœ์„œ๊ฐ€ ์—†๋Š” ๋ฌธ์ œ์— ์ˆœ์„œ๋ฅผ ๊ฐ•์ œํ•ด ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.
์ด ๋ฐฉ๋ฒ•์€ ํŠน์ • ์ˆœ์„œ๋ผ๋Š” ์ œ์•ฝ์„ ์ถ”๊ฐ€ํ•˜์ง€๋งŒ, ๋‹ต์ด ๋ณ€ํ•˜์ง€๋Š” ์•Š๊ธฐ์— ์ œ์•ฝ์€ ๋‹จ์ˆœํžˆ ์šฐ๋ฆฌ์˜ ์‚ฌ๊ณ ๋ฅผ ๋„์™€์ฃผ๋Š” tool๋กœ์จ์˜ ์—ญํ• ๋งŒ ํ•œ๋‹ค.

 

ํŠน์ •ํ˜•ํƒœ์˜ ๋‹ต๋งŒ์„ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์„๊นŒ?
์ˆœ์„œ๋ฅผ ๊ฐ•์ œํ•˜๋Š” ๊ธฐ๋ฒ•์˜ ์—ฐ์žฅ์„ ์ธ ์ •๊ทœํ™”(canonicalization)๊ธฐ๋ฒ•์€ ๊ณ ๋ คํ•ด์•ผํ•  ๋‹ต๋“ค ์ค‘ ํ˜•ํƒœ๋Š” ๋‹ค๋ฅด๋‚˜ ๊ฒฐ๊ณผ์ ์œผ๋กœ๋Š” ๋˜‘๊ฐ™์€ ๊ฒƒ๋“ค์„ ๊ทธ๋ฃน์œผ๋กœ ๋ฌถ๊ณ , ๊ฐ ๊ทธ๋ฃน์˜ ๋Œ€ํ‘œ๋“ค๋งŒ์„ ๊ณ ๋ คํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

์ •๊ทœํ™”๊ธฐ๋ฒ•์€ ์•„์ฃผ ์œ ์šฉํ•˜๋‚˜ ๋ฌธ์ œ๋งˆ๋‹ค ์‚ฌ์šฉํ•ด์•ผ๋˜๋Š” ์ •๊ทœํ™”๊ธฐ๋ฒ•์ด ๋งค์šฐ ๋‹ฌ๋ผ, ๊ฒฝํ—˜์„ ํ†ตํ•˜์ง€ ์•Š์œผ๋ฉด ๊นจ๋‹ซ๊ธฐ ์‰ฝ์ง€ ์•Š๋‹ค.

 

 

 

 

 

 

 

 

 

 

 

 

'Gain Study > Algorithm๋ฌธํ•ด์ „' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Gain_Study_์ข…๋งŒ๋ถ]02. ์ฝ”๋”ฉ๊ณผ ๋””๋ฒ„๊น…  (2) 2023.09.06

+ Recent posts