[c++] BOJ 14725 :: ๊ฐœ๋ฏธ๊ตด
Algorithm ๋ฌธ์ œ/BOJ 2021. 9. 7. 16:28

๋ฌธ์ œ ๊ฐœ๋ฏธ๊ตด ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ 14725๋ฒˆ: ๊ฐœ๋ฏธ๊ตด ์ฒซ ๋ฒˆ์งธ ์ค„์€ ๋กœ๋ด‡ ๊ฐœ๋ฏธ๊ฐ€ ๊ฐ ์ธต์„ ๋”ฐ๋ผ ๋‚ด๋ ค์˜ค๋ฉด์„œ ์•Œ๊ฒŒ ๋œ ๋จน์ด์˜ ์ •๋ณด ๊ฐœ์ˆ˜ N๊ฐœ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ค N โ‰ค 1000) ๋‘ ๋ฒˆ์งธ ์ค„๋ถ€ํ„ฐ N+1 ๋ฒˆ์งธ ์ค„๊นŒ์ง€, ๊ฐ ์ค„์˜ ์‹œ์ž‘์€ ๋กœ๋ด‡ ๊ฐœ๋ฏธ ํ•œ๋งˆ๋ฆฌ๊ฐ€ ๋ณด๋‚ด์ค€ ๋จน์ด www.acmicpc.net ํ’€์ด ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํŠธ๋ฆฌ๋ฅผ ๋งŒ๋“  ๋‹ค์Œ ๋ ˆ๋ฒจ ์ˆœํšŒ๋กœ ์ถœ๋ ฅํ•œ๋‹ค. ์ฝ”๋“œ #include #include #include #include using namespace std; struct Node { string name; vector children; int level; Node(string n, int l) { name = n; level = l; } }; int N; vector burrow; bool compare(Node* ..

[c++] BOJ 19535 :: ใ„ทใ„ทใ„ทใ…ˆ
Algorithm ๋ฌธ์ œ/BOJ 2021. 7. 11. 22:56

๋‚œ์ด๋„ : ๊ณจ๋“œ 3 ๋ฌธ์ œ ใ„ทใ„ทใ„ทใ…ˆ ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ ์ •์ ์ด ๋„ค ๊ฐœ ์ด์ƒ ์žˆ๋Š” ์ž„์˜์˜ ํŠธ๋ฆฌ์— ๋Œ€ํ•ด, ๊ทธ ํŠธ๋ฆฌ์—์„œ ์ •์  ๋„ค ๊ฐœ๋กœ ์ด๋ฃจ์–ด์ง„ ์ง‘ํ•ฉ์„ ๊ณ ๋ฅด์ž. ์ „์ฒด ํŠธ๋ฆฌ์˜ ๊ฐ„์„ ๋“ค ์ค‘ ์ง‘ํ•ฉ์— ์†ํ•œ ๋‘ ์ •์ ์„ ์ž‡๋Š” ๊ฐ„์„ ๋งŒ์„ ๋‚จ๊ฒผ์„ ๋•Œ, ๋„ค ๊ฐœ์˜ ์ •์ ์ด ํ•˜๋‚˜์˜ ํŠธ๋ฆฌ ํ˜•ํƒœ๋กœ ์ด์–ด์ง€๊ฒŒ ๋œ๋‹ค๋ฉด โ€˜ใ„ทโ€™ ๋ชจ์–‘์ด๊ฑฐ๋‚˜ โ€˜ใ…ˆโ€™ ๋ชจ์–‘์ผ ๊ฒƒ์ด๋‹ค. ํŠธ๋ฆฌ์—์„œ โ€˜ใ„ทโ€™์˜ ๊ฐœ์ˆ˜์™€ โ€˜ใ…ˆโ€™์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ฐ๊ฐ ํŠธ๋ฆฌ์—์„œ โ€˜ใ„ทโ€™ ๋ชจ์–‘, โ€˜ใ…ˆโ€™ ๋ชจ์–‘์„ ์ด๋ฃจ๋Š” ์ •์  ๋„ค ๊ฐœ์งœ๋ฆฌ ์ง‘ํ•ฉ์˜ ๊ฐœ์ˆ˜๋ผ๊ณ  ํ•˜์ž. ์ด์ œ, ๋™ํ˜„์ด๋Š” ์„ธ์ƒ์˜ ๋ชจ๋“  ํŠธ๋ฆฌ๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์„ธ ์ข…๋ฅ˜๋กœ ๋‚˜๋ˆ„์—ˆ๋‹ค. D-ํŠธ๋ฆฌ : โ€˜ใ„ทโ€™์ด โ€˜ใ…ˆโ€™์˜ 3๋ฐฐ๋ณด๋‹ค ๋งŽ์€ ํŠธ๋ฆฌ G-ํŠธ๋ฆฌ : โ€˜ใ„ทโ€™์ด โ€˜ใ…ˆโ€™์˜ 3๋ฐฐ๋ณด๋‹ค ์ ์€ ํŠธ๋ฆฌ DUDUDUNGA-ํŠธ๋ฆฌ : โ€˜ใ„ทโ€™์ด โ€˜ใ…ˆโ€™์˜ ์ •ํ™•ํžˆ 3๋ฐฐ๋งŒํผ ์žˆ๋Š” ํŠธ๋ฆฌ ์‹ ์ด ๋‚œ ๋™ํ˜„์ด๋Š” ํŠธ๋ฆฌ๋งŒ ๋ณด..

[c++] BOJ 3584 :: ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ
Algorithm ๋ฌธ์ œ/BOJ 2021. 7. 3. 15:30

๋‚œ์ด๋„ : ๊ณจ๋“œ 4 ๊ฑธ๋ฆฐ ์‹œ๊ฐ„ : 40๋ถ„ ๋ฌธ์ œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ ๋ฃจํŠธ๊ฐ€ ์žˆ๋Š” ํŠธ๋ฆฌ(rooted tree)๊ฐ€ ์ฃผ์–ด์ง€๊ณ , ๊ทธ ํŠธ๋ฆฌ ์ƒ์˜ ๋‘ ์ •์ ์ด ์ฃผ์–ด์งˆ ๋•Œ ๊ทธ๋“ค์˜ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ(Nearest Common Anscestor)์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜๋ฉ๋‹ˆ๋‹ค. ๋‘ ๋…ธ๋“œ์˜ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ์€, ๋‘ ๋…ธ๋“œ๋ฅผ ๋ชจ๋‘ ์ž์†์œผ๋กœ ๊ฐ€์ง€๋ฉด์„œ ๊นŠ์ด๊ฐ€ ๊ฐ€์žฅ ๊นŠ์€(์ฆ‰ ๋‘ ๋…ธ๋“œ์— ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด) ๋…ธ๋“œ๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 15์™€ 11๋ฅผ ๋ชจ๋‘ ์ž์†์œผ๋กœ ๊ฐ–๋Š” ๋…ธ๋“œ๋Š” 4์™€ 8์ด ์žˆ์ง€๋งŒ, ๊ทธ ์ค‘ ๊นŠ์ด๊ฐ€ ๊ฐ€์žฅ ๊นŠ์€(15์™€ 11์— ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด) ๋…ธ๋“œ๋Š” 4 ์ด๋ฏ€๋กœ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ์€ 4๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋ฃจํŠธ๊ฐ€ ์žˆ๋Š” ํŠธ๋ฆฌ๊ฐ€ ์ฃผ์–ด์ง€๊ณ , ๋‘ ๋…ธ๋“œ๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ ๊ทธ ๋‘ ๋…ธ๋“œ์˜ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณตํ†ต ์กฐ์ƒ์„ ์ฐพ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”..

[c++] BOJ 5052 :: ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก
Algorithm ๋ฌธ์ œ/BOJ 2021. 7. 3. 15:28

๋‚œ์ด๋„ : ๊ณจ๋“œ 4 ๊ฑธ๋ฆฐ ์‹œ๊ฐ„ : 20๋ถ„ ๋ฌธ์ œ ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก์ด ์ฃผ์–ด์ง„๋‹ค. ์ด๋•Œ, ์ด ๋ชฉ๋ก์ด ์ผ๊ด€์„ฑ์ด ์žˆ๋Š”์ง€ ์—†๋Š”์ง€๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก์ด ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๋ ค๋ฉด, ํ•œ ๋ฒˆํ˜ธ๊ฐ€ ๋‹ค๋ฅธ ๋ฒˆํ˜ธ์˜ ์ ‘๋‘์–ด์ธ ๊ฒฝ์šฐ๊ฐ€ ์—†์–ด์•ผ ํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก์ด ์•„๋ž˜์™€ ๊ฐ™์€ ๊ฒฝ์šฐ๋ฅผ ์ƒ๊ฐํ•ด๋ณด์ž ๊ธด๊ธ‰์ „ํ™”: 911 ์ƒ๊ทผ: 97 625 999 ์„ ์˜: 91 12 54 26 ์ด ๊ฒฝ์šฐ์— ์„ ์˜์ด์—๊ฒŒ ์ „ํ™”๋ฅผ ๊ฑธ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์—†๋‹ค. ์ „ํ™”๊ธฐ๋ฅผ ๋“ค๊ณ  ์„ ์˜์ด ๋ฒˆํ˜ธ์˜ ์ฒ˜์Œ ์„ธ ์ž๋ฆฌ๋ฅผ ๋ˆ„๋ฅด๋Š” ์ˆœ๊ฐ„ ๋ฐ”๋กœ ๊ธด๊ธ‰์ „ํ™”๊ฐ€ ๊ฑธ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋”ฐ๋ผ์„œ, ์ด ๋ชฉ๋ก์€ ์ผ๊ด€์„ฑ์ด ์—†๋Š” ๋ชฉ๋ก์ด๋‹ค. ํ’€์ด b+tree ์‚ฌ์šฉ ์ฝ”๋“œ #include #include #include #include using namespace ..

[c++] BOJ 2250 :: ํŠธ๋ฆฌ์˜ ๋†’์ด์™€ ๋„ˆ๋น„
Algorithm ๋ฌธ์ œ/BOJ 2021. 6. 2. 21:58

๋‚œ์ด๋„ : ๊ณจ๋“œ 2 ๊ฑธ๋ฆฐ ์‹œ๊ฐ„ : 1์‹œ๊ฐ„ ๋ฌธ์ œ ํŠธ๋ฆฌ์˜ ๋†’์ด์™€ ๋„ˆ๋น„ ๋ฌธ์ œ ๋ฐ”๋กœ๊ฐ€๊ธฐ ์ด์ง„ํŠธ๋ฆฌ๋ฅผ ๋‹ค์Œ์˜ ๊ทœ์น™์— ๋”ฐ๋ผ ํ–‰๊ณผ ์—ด์— ๋ฒˆํ˜ธ๊ฐ€ ๋ถ™์–ด์žˆ๋Š” ๊ฒฉ์ž ๋ชจ์–‘์˜ ํ‹€ ์†์— ๊ทธ๋ฆฌ๋ ค๊ณ  ํ•œ๋‹ค. ์ด๋•Œ ๋‹ค์Œ์˜ ๊ทœ์น™์— ๋”ฐ๋ผ ๊ทธ๋ฆฌ๋ ค๊ณ  ํ•œ๋‹ค. ์ด์ง„ํŠธ๋ฆฌ์—์„œ ๊ฐ™์€ ๋ ˆ๋ฒจ(level)์— ์žˆ๋Š” ๋…ธ๋“œ๋Š” ๊ฐ™์€ ํ–‰์— ์œ„์น˜ํ•œ๋‹ค. ํ•œ ์—ด์—๋Š” ํ•œ ๋…ธ๋“œ๋งŒ ์กด์žฌํ•œ๋‹ค. ์ž„์˜์˜ ๋…ธ๋“œ์˜ ์™ผ์ชฝ ๋ถ€ํŠธ๋ฆฌ(left subtree)์— ์žˆ๋Š” ๋…ธ๋“œ๋“ค์€ ํ•ด๋‹น ๋…ธ๋“œ๋ณด๋‹ค ์™ผ์ชฝ์˜ ์—ด์— ์œ„์น˜ํ•˜๊ณ , ์˜ค๋ฅธ์ชฝ ๋ถ€ํŠธ๋ฆฌ(right subtree)์— ์žˆ๋Š” ๋…ธ๋“œ๋“ค์€ ํ•ด๋‹น ๋…ธ๋“œ๋ณด๋‹ค ์˜ค๋ฅธ์ชฝ์˜ ์—ด์— ์œ„์น˜ํ•œ๋‹ค. ๋…ธ๋“œ๊ฐ€ ๋ฐฐ์น˜๋œ ๊ฐ€์žฅ ์™ผ์ชฝ ์—ด๊ณผ ์˜ค๋ฅธ์ชฝ ์—ด ์‚ฌ์ด์—” ์•„๋ฌด ๋…ธ๋“œ๋„ ์—†์ด ๋น„์–ด์žˆ๋Š” ์—ด์€ ์—†๋‹ค. ์ด์™€ ๊ฐ™์€ ๊ทœ์น™์— ๋”ฐ๋ผ ์ด์ง„ํŠธ๋ฆฌ๋ฅผ ๊ทธ๋ฆด ๋•Œ ๊ฐ ๋ ˆ๋ฒจ์˜ ๋„ˆ๋น„๋Š” ๊ทธ ๋ ˆ๋ฒจ์— ํ• ๋‹น๋œ ๋…ธ๋“œ ์ค‘ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ์— ..

[ํ›„์œ„ํ‘œ๊ธฐ๋ฒ•] ํ›„์œ„ํ‘œ๊ธฐ์‹์œผ๋กœ ๊ณ„์‚ฐ๊ธฐ ๋งŒ๋“ค๊ธฐ (html, js ์ด์šฉ) :: ๊ฐœ๋…์—์„œ ๊ตฌํ˜„๊นŒ์ง€
์ปดํ“จํ„ฐ๊ณผํ•™ (CS)/๊ธฐ์ดˆ 2020. 12. 21. 00:00

ํ›„์œ„ํ‘œ๊ธฐ๋ฒ•์œผ๋กœ ๊ณ„์‚ฐ๊ธฐ ๋งŒ๋“ค๊ธฐ ๊ณ„์‚ฐ๊ธฐ ๊ด€๋ จ ์™ธ์ฃผ๊ฐ€ ๋“ค์–ด์™€์„œ ํ•ด๋ณด๋˜ ์ค‘, ์˜ˆ์ „์— ๋ฐฐ์› ๋˜ ํ›„์œ„ํ‘œ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•ด์•ผํ–ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๊ธฐ์–ต์ด ์•ˆ๋‚˜์„œ ๊ฒ€์ƒ‰ ์—†์ด ํ˜ผ์ž ๊ตฌํ˜„ํ•˜๋ ค๋‹ค ๋ณด๋‹ˆ ๋„ˆ๋ฌด ์–ด๋ ค์› ๋‹ค... ๊ฒ€์ƒ‰ํ•ด๋ณด๋‹ˆ๊นŒ stack์„ ์ด์šฉํ•ด์„œ ํ›„์œ„ํ‘œ๊ธฐ๋ฒ•์„ ๋งŒ๋“œ๋Š” ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์ด ๋‚˜์™€์žˆ์–ด์„œ ๊นŒ๋จน์ง€ ์•Š๊ธฐ ์œ„ํ•ด ๊ธฐ๋กํ•œ๋‹ค. ํ›„์œ„ ํ‘œ๊ธฐ๋ฒ• ์ˆ˜์‹ ํŠธ๋ฆฌ ํ›„์œ„ ํ‘œ๊ธฐ๋ฒ•์ด๋ž€ ๊ณ„์‚ฐ์‹์—์„œ ๊ณ„์‚ฐ์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ํ‘œ๊ธฐ๋ฒ•์ด๋‹ค. ์˜ˆ์ œ์™€ ํ•จ๊ป˜ ์‚ดํŽด๋ณด์ž. ์ˆ˜์‹ : 9x3+1-3%3 ์ˆ˜์‹์ด ์ฃผ์–ด์กŒ์„ ๋•Œ ๋น„์—ฐ์‚ฐ์ž์™€ ์—ฐ์‚ฐ์ž๋กœ ๋‚˜๋ˆˆ ํ›„, ๊ฐ ํ•ญ๋ชฉ์„ ํ•˜๋‚˜์˜ ๋…ธ๋“œ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ํŠธ๋ฆฌ ํ˜•ํƒœ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. ์ด๋Ÿฌํ•œ ํŠธ๋ฆฌ๋Š” ์ˆ˜์‹์„ ํŠธ๋ฆฌ๋ผ๋Š” ์ž๋ฃŒ๊ตฌ์กฐ๋กœ ๋งŒ๋“  ๊ฒƒ์ด๋‹ˆ ์ˆ˜์‹ํŠธ๋ฆฌ, ์ฆ‰ Expression Tree๋ผ๊ณ  ๋ถˆ๋ฆฐ๋‹ค. ํŠธ๋ฆฌ ์ˆœํšŒ์™€ ํ‘œ๊ธฐ๋ฒ• ํŠธ๋ฆฌ๋ฅผ ์ˆœํšŒํ•˜๋Š” ๋ฐฉ์‹์—๋Š” prefix(์ „์œ„)..

[c++] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฐœ๋…๊ณต๋ถ€ :: ๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰ (BFS, DFS)
์ปดํ“จํ„ฐ๊ณผํ•™ (CS)/Algorithm 2020. 9. 13. 00:01

๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰ ๊ทธ๋ž˜ํ”„๋ฅผ ํƒ์ƒ‰ํ•˜๋Š” ๊ธฐ๋ฒ•์—๋Š” ๋Œ€ํ‘œ์ ์œผ๋กœ 2๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰์ธ BFS(Breadth-First Search)์™€ ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰์ธ DFS(Depth-First Search)์ด๋‹ค. BFS BFS๋Š” ํ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ตฌํ˜„ํ•œ๋‹ค. ์„ค๋ช… ํŠธ๋ฆฌ๋กœ ์˜ˆ๋ฅผ ๋“ค์—ˆ์ง€๋งŒ, ๋ชจ๋“  ๊ทธ๋ž˜ํ”„์—์„œ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋™์ž‘ํ•œ๋‹ค. ๋ฃจํŠธ ๋…ธ๋“œ๋ฅผ queue์— ๋„ฃ๋Š”๋‹ค. queue์˜ ๋…ธ๋“œ๋ฅผ ํ•˜๋‚˜ ๊บผ๋‚ธ ํ›„, ํ•ด๋‹น ๋…ธ๋“œ์™€์˜ ์ธ์ ‘ ๋…ธ๋“œ๋ฅผ ๋ชจ๋‘ queue์— ๋„ฃ๋Š”๋‹ค. ์œ„์˜ ๋ฐฉ์‹์„ ๋ชจ๋“  ๋…ธ๋“œ๊ฐ€ ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•œ๋‹ค. stack์— ๋“ค์–ด๊ฐ„ ์ˆœ์„œ๋ฅผ ๋ณด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 1=>2=>3=>4=>5=>6=>7=>8 ๋”ฐ๋ผ์„œ ํŠธ๋ฆฌ์—์„œ BFS๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ํƒ์ƒ‰์„ ํ•˜๋Š” ๊ฒƒ์€ ๋ ˆ๋ฒจ ์ˆœํšŒ๋ฅผ ํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค. DFS DFS๋Š” ์Šคํƒ์„ ์ด์šฉํ•˜์—ฌ ๊ตฌํ˜„ํ•œ๋‹ค. ์„ค๋ช… ํŠธ๋ฆฌ๋กœ ์˜ˆ๋ฅผ ๋“ค..

[c++] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฐœ๋…๊ณต๋ถ€ :: ์ตœ๋Œ€ ์ตœ์†Œ ์ฐพ๊ธฐ (ํ† ๋„ˆ๋จผํŠธ ํŠธ๋ฆฌ, selection ์•Œ๊ณ ๋ฆฌ์ฆ˜)
์ปดํ“จํ„ฐ๊ณผํ•™ (CS)/Algorithm 2020. 9. 7. 10:41

์ตœ๋Œ€ ์ตœ์†Œ ์ฐพ๊ธฐ ์„ ํƒ ๋ฌธ์ œ ์ฃผ์–ด์ง„ ๋ฆฌ์ŠคํŠธ์˜ ์ตœ๋Œ€, ์ตœ์†Œ ๊ฐ’์„ ์ฐพ๊ฑฐ๋‚˜ n๋ฒˆ์งธ ํฐ ๊ฐ’, n๋ฒˆ์งธ ์ž‘์€ ๊ฐ’์„ ์ฐพ๋Š” ๊ณผ์ •๋„ ํ”„๋กœ๊ทธ๋žจ์—์„œ ๋งŽ์ด ๋“ฑ์žฅํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ n๊ฐœ์˜ ์ˆซ์ž๋“ค ์ค‘ k๋ฒˆ์งธ๋กœ ์ž‘์€(๋˜๋Š” ํฐ) ๊ฐ’์„ ์ฐพ๋Š” ๋ฌธ์ œ๋ฅผ 'Selection problem' ์ฆ‰, ์„ ํƒ ๋ฌธ์ œ ๋ผ๊ณ  ํ•œ๋‹ค. ์ตœ๋Œ€ ์ตœ์†Œ ์ฐพ๊ธฐ ์„ ํƒ ๋ฌธ์ œ์—์„œ ๊ฐ€์žฅ ์‰ฌ์šด ๋ฌธ์ œ๊ฐ€ ์ตœ๋Œ€ / ์ตœ์†Œ๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ์ด๋‹ค. ์ฃผ์–ด์ง„ ๋ฆฌ์ŠคํŠธ์˜ ์ตœ๋Œ€๊ฐ’์„ ์ฐพ๊ธฐ ์œ„ํ•ด์„œ๋Š” ์–ด๋–ค ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ ๊นŒ? ์ •๋ ฌ ๋จผ์ €, ์ด์ „์— ๋ฐฐ์› ๋˜ ์ •๋ ฌ์„ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ •๋ ฌ ํ›„ ๋ฆฌ์ŠคํŠธ์˜ ๋งˆ์ง€๋ง‰ ์š”์†Œ๋ฅผ ๊ฐ€์ ธ์˜ค๋ฉด ์ตœ๋Œ€๊ฐ’์„ ์•Œ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ํ•˜์ง€๋งŒ ์ค‘๊ฐ„ ์š”์†Œ๋“ค์˜ ์ •๋ ฌ์€ ์ตœ๋Œ€๊ฐ’์„ ์ฐพ๋Š”๋ฐ์— ๋ถˆํ•„์š”ํ•œ ๊ณผ์ •์ด๋‹ค. ๋”ฐ๋ผ์„œ ์ •๋ ฌ์„ ์ด์šฉํ•˜๋ฉด ์ •๋ ฌ์˜ ์ตœ์†Œ ์‹œ๊ฐ„๋ณต์žก๋„์ธ O(nlgn)๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. min/..