๊ฐœ๋ฐœ์ž ์ทจ์—… ์ค€๋น„/์ทจ์ค€ ํ›„๊ธฐ

7) ์นด์นด์˜ค ๋ชจ๋นŒ๋ฆฌํ‹ฐ ์‹ ์ž… ๊ณต์ฑ„ ์ง€์› ํ›„๊ธฐ - 1, 2์ฐจ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ

stoneeee 2022. 12. 23. 14:11

 

1์ฐจ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋Š” ์ „์› ์‘์‹œ์ด๋‹ค.

์ด๋ฆ„, ์ „ํ™”๋ฒˆํ˜ธ, ์ด๋ฉ”์ผ๋งŒ ์ œ์ถœํ•˜๋ฉด ์ ‘์ˆ˜๊ฐ€ ๋œ๋‹ค.

์ž์†Œ์„œ๋ฅผ ์“ธ ๊ฐ์˜ค๋กœ ์ ‘์†ํ–ˆ๋Š”๋ฐ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์ดํ›„ ์„œ๋ฅ˜ ์ œ์ถœ์ด์–ด์„œ ๋„ˆ๋ฌด ์ข‹์•˜๋‹ค.

๋‹ค๋ฅธ ํšŒ์‚ฌ๋“ค๋„ ๋ณด๊ณ  ๋ฐฐ์›Œ์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

 

์‹ ์ž… ๊ณต์ฑ„๋Š” ๊ฒฝ๋ ฅ 1๋…„ ๋ฏธ๋งŒ๋งŒ ์ง€์› ๊ฐ€๋Šฅํ–ˆ๋‹ค.

 

 

 

 

 

 

1์ฐจ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ

ํ”Œ๋žซํผ : ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

๋ฌธ์ œ์ˆ˜ : ์•Œ๊ณ ๋ฆฌ์ฆ˜ 3๋ฌธํ•ญ

์‹œํ—˜ ์‹œ๊ฐ„ : 2์‹œ๊ฐ„

ํ™”์ƒ๊ฐ๋… : X, ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅ, ์™ธ๋ถ€ IDE ๊ฐ€๋Šฅ

์‘์‹œ ์ง๋ฌด : ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ

์‘์‹œ ๊ฐ€๋Šฅ ์–ธ์–ดC, C++, Java, JavaScript, Kotlin, Python3, Swift

์ฒด๊ฐ ๋‚œ์ด๋„ : โ—โ—‹โ—‹โ—‹โ—‹ 

 

์‚ฌ์šฉํ•œ ์–ธ์–ด : ํŒŒ์ด์ฌ

ํ‘ผ ๋ฌธ์ œ์ˆ˜ : 3 ์†”(์ฑ„์  3 ์†” ์˜ˆ์ƒ)

 

 

 

1. ๊ตฌํ˜„ : ์กฐ๊ฑด์— ํ•ด๋‹นํ•˜๋Š” ๋‚ ์งœ ์ˆ˜๋ฅผ ์ฒดํฌํ•˜๋Š” ๋ฌธ์ œ. ๋‚˜๋Š” boolean ๋ฐฐ์—ด์„ ๋งŒ๋“ค์–ด์„œ ์ฒดํฌํ–ˆ๋‹ค. ์‹ค๋ฒ„ 5 ์ดํ•˜.

2. ๊ตฌํ˜„ : ํ•ด์‹œ๋ฅผ ์ด์šฉํ•ด ์ค‘๋ณต ์ฒดํฌ๋ฅผ ํ•ด์•ผ ํ•˜๋Š” ๋‹จ์ˆœ ๊ตฌํ˜„ ๋ฌธ์ œ์˜€๋‹ค. set ์ž๋ฃŒํ˜•์„ ์ด์šฉํ•ด์„œ ํ’€์—ˆ๋‹ค. ์‹ค๋ฒ„ 5 ์ดํ•˜.

3. ๊ตฌํ˜„ : ์‹œ๊ฐ„ ๊ด€๋ จ ๊ตฌํ˜„ ๋ฌธ์ œ์˜€๋‹ค. ๋…„, ์›”, ์ผ, ์‹œ, ๋ถ„, ์ดˆ๋กœ ์ฃผ์–ด์ง„ ์‹œ๊ฐ„์„ ๋”ํ•ด์„œ ์„œ๋กœ ๋‹ค๋ฅธ ๋‚ ์˜ ๊ฐœ์ˆ˜๋ฅผ ํ™•์ธํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค. ๋‚˜๋Š” ๋…„, ์›”, ์ผ๋งŒ ํ•œ ๋ญ‰ํƒฑ์ด๋กœ ๋งŒ๋“ค๊ณ  ์‹œ๊ฐ„์„ ๊ณ„์‚ฐํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด์„œ ๊ณ„์‚ฐํ–ˆ๊ณ , ๊ฒฐ๊ณผ๋Š” set ์ž๋ฃŒํ˜•์— ์ €์žฅํ–ˆ๋‹ค. ์‹ค๋ฒ„ 5 ์ •๋„.

 

 

 

๊ทธ๋ž˜๋„ ์นด์นด์˜ค ๊ณ„์—ด์‚ฌ๋‹ˆ๊นŒ ๋ฌธ์ œ๊ฐ€ ์–ด๋ ต๊ฒŒ ๋‚˜์˜ค์ง€ ์•Š์„๊นŒ ์ƒ๊ฐํ–ˆ๋Š”๋ฐ ๊ต‰์žฅํžˆ ์‰ฝ๊ฒŒ ๋‚˜์™”๋‹ค.

์ผ์ด ์žˆ์–ด์„œ ์ข€ ๋Šฆ๊ฒŒ ์‘์‹œํ•ด์„œ ๋ฌธ์ œ๋งŒ ๊ตฌ๊ฒฝํ•ด๋ณด๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ์‰ฌ์›Œ์„œ 20๋ถ„ ์ •๋„ ๋“ค์—ฌ์„œ ํ’€์—ˆ๋‹ค.

 

๋ฌธ์ œ๋ฅผ ์ฐจ๋ถ„ํžˆ ์ฝ์–ด ์กฐ๊ฑด์„ ์ •ํ™•ํ•˜๊ฒŒ ์ดํ•ดํ•œ ๋’ค ๊ตฌํ˜„ํ•˜๋ฉด ๋˜๋Š” ๋ฌธ์ œ ์œ ํ˜•์ด๋‹ค.

์„ธ ๋ฌธ์ œ ๋‹ค ๊ตฌํ˜„ ๋ฌธ์ œ์˜€๊ณ , ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ํ•  ์š”์†Œ๋‚˜ ์—ฃ์ง€ ์ผ€์ด์Šค๊ฐ€ ๋ ๋งŒํ•œ ๊ฒƒ๋„ ๋”ฑํžˆ ์—†์—ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ์นœ์ ˆํ•˜๊ฒŒ ์ค˜์„œ ๋Œ€๋ถ€๋ถ„ ์ฒดํฌํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. ๋‹ค๋งŒ ์ฑ„์  ๊ธฐ๋Šฅ์€ ์—†์—ˆ๋‹ค.

์นด์นด์˜ค๋ฑ…ํฌ๋„ ์–ด๋ ต์ง€๋Š” ์•Š๊ฒŒ ๋‚˜์™”๋‹ค๊ณ  ๋“ค์—ˆ๋Š”๋ฐ, ์นด์นด์˜ค ๊ณต์ฑ„๊ฐ€ ์•„๋‹Œ ๊ณ„์—ด์‚ฌ ์ฑ„์šฉ์€ ๋‚œ์ด๋„๊ฐ€ ๊ฐ€์ง€๊ฐ์ƒ‰์ธ ๊ฒƒ ๊ฐ™๋‹ค.

 

๊ทธ๋‚˜๋งˆ ๊นŒ๋‹ค๋กญ๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ์„๋งŒํ•œ ๋ฌธ์ œ๊ฐ€ 3๋ฒˆ ๋ฌธ์ œ์˜€๋Š”๋ฐ, ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋‹ค๋ฃจ๋Š” ๋ฌธ์ œ์˜€๋‹ค.

๊ณ„์‚ฐ์„ ํŽธํ•˜๊ฒŒ ํ•˜๋ผ๊ณ  ํ•œ ๋‹ฌ์„ 30์ผ, 1๋…„์„ 360์ผ๋กœ ํ†ต์ผํ•ด์„œ ์คฌ๋Š”๋ฐ, ์ด ์กฐ๊ฑด์€ ๊ตณ์ด ์—†์–ด๋„ ๋Œ€๋ถ€๋ถ„ ์‚ฌ๋žŒ๋“ค์˜ ํ’€์ด์— ์ง€์žฅ์ด ์—†์—ˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

์บ˜๋ฆฐ๋” ๋ชจ๋“ˆ์„ ๋ถˆ๋Ÿฌ์™€์„œ ์ฒดํฌํ•œ ์‚ฌ๋žŒ๋“ค๋„ ์ข€ ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์€๋ฐ ์ข‹์€ ํ’€์ด๋Š” ์•„๋‹ˆ๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

 

 

 

 

 

>> ๊ฒฐ๊ณผ : ํ•ฉ๊ฒฉ

 

์นด์นด์˜ค ๋ชจ๋นŒ๋ฆฌํ‹ฐ 1์ฐจ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ

๊ฒฐ๊ณผ ๋ฐœํ‘œ๊นŒ์ง€ 4์ผ ์†Œ์š”.

 

ํ•ฉ๊ฒฉ์ž๋Š” ์ €๋…์— ๋ฉ”์ผ์„ ์ฃผ๊ณ , ๋ถˆํ•ฉ๊ฒฉ์ž๋Š” ๋‹ค์Œ ๋‚  ์˜ค์ „์— ์—ฐ๋ฝ์„ ์คฌ๋‹ค.

์ด๋ฒˆ ์ฟ ํŒก ๊ณต์ฑ„๋„ ๊ทธ๋žฌ๋‹ค๋˜๋ฐ ์ข€ ๋„ˆ๋ฌดํ•˜๋‹ค.

์„ธ ๋ฌธ์ œ ๋‹ค ํ’€๊ณ ๋„ ๋–จ์–ด์ง„ ์‚ฌ๋žŒ๋„ ๋งŽ์•˜๋Š”๋ฐ ์•„๋งˆ ํžˆ๋“  ์ผ€์ด์Šค์—์„œ ๊ฑธ๋ฆฐ ๊ฒŒ ์•„๋‹๊นŒ.

์•„๋ฌดํŠผ ๋‹ค ๋งž์•„์•ผ ํ•ฉ๊ฒฉ์ธ ๊ฒƒ ๊ฐ™์•˜๋‹ค.

 

1์ฐจ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์— ํ†ต๊ณผํ•ด๋„ ๋”ฑํžˆ ์„œ๋ฅ˜ ์ œ์ถœ์€ ์—†์—ˆ๋‹ค. 2์ฐจ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๊นŒ์ง€ ํ†ต๊ณผํ•ด์•ผ ์„œ๋ฅ˜๋ฅผ ์ œ์ถœํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

 

 

 

 

 

 

2์ฐจ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ

ํ”Œ๋žซํผ : ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

๋ฌธ์ œ์ˆ˜ : ์•Œ๊ณ ๋ฆฌ์ฆ˜ 2๋ฌธํ•ญ + CS์ง€์‹ 20๋ฌธํ•ญ(์ด 22๋ฌธํ•ญ)

์‹œํ—˜ ์‹œ๊ฐ„ : 3์‹œ๊ฐ„

ํ™”์ƒ๊ฐ๋… : O, ๊ฒ€์ƒ‰ ๋ถˆ๊ฐ€, ์™ธ๋ถ€ IDE ๊ฐ€๋Šฅ

์‘์‹œ ์ง๋ฌด : ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ

์‘์‹œ ๊ฐ€๋Šฅ ์–ธ์–ด C, C++, Java, JavaScript, Kotlin, Python3, Swift

์ฒด๊ฐ ๋‚œ์ด๋„ : โ—โ—โ—โ—โ—‹ 

 

์‚ฌ์šฉํ•œ ์–ธ์–ด : ํŒŒ์ด์ฌ

ํ‘ผ ๋ฌธ์ œ์ˆ˜ : 2 ์†”(์ฑ„์  1 ์†” ์˜ˆ์ƒ)

 

 

 

1. dp : ์นด์นด์˜ค ๋ชจ๋นŒ๋ฆฌํ‹ฐ ์ปจ์…‰์ธ์ง€ ๊ตํ†ต์ˆ˜๋‹จ๊ณผ ๊ด€๋ จ๋œ ํ…Œ๋งˆ์˜ ๋ฌธ์ œ์˜€๋‹ค. ์กฐ๊ฑด ๋ถ„๊ธฐ๊ฐ€ ๋งŽ๊ณ  ๊นŒ๋‹ค๋กœ์› ๋‹ค. ๊ทธ๋ฆฌ๋””๋กœ๋Š” ํ•ด๊ฒฐ์ด ์•ˆ ๋  ๋ฌธ์ œ์ด๊ณ  dp ํ’€์ด๊ฐ€ ์ •ํ•ด์ผ ๊ฒƒ ๊ฐ™๋‹ค. ์‹œ๋„ํ•˜๋‹ค๊ฐ€ ์˜ˆ์™ธ๋ฅผ ๋†“์น  ๊ฒƒ ๊ฐ™์•„์„œ ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๋‚˜์˜ฌ ๊ฑธ ์•Œ๊ณ ๋„ ๊ทธ๋ƒฅ break ๋ถ„๊ธฐ๋ฅผ ์—ฌ๋Ÿฟ ๋‘” ๋ฐฑํŠธ๋ž™ํ‚น์œผ๋กœ ํ’€์—ˆ๋‹ค. ๊ณจ๋“œ ํ•˜์œ„ ์˜ˆ์ƒ

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

 

 

 

CS ๋ฌธ์ œ๋Š” ์ „๋ถ€ ๊ฐ๊ด€์‹์œผ๋กœ, 5์ง€์„ ๋‹คํ˜• ๋ฌธํ•ญ๋“ค์ด์—ˆ๋‹ค.

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

DB, ๋„คํŠธ์›Œํฌ, ์šด์˜์ฒด์ œ, ์ž๋ฃŒ๊ตฌ์กฐ, ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณ ๋ฃจ๊ณ ๋ฃจ ๋‚˜์™”๋‹ค.

2๋‹ฌ ์ „์ด์—ˆ๋‹ค๋ฉด ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์ œ์™ธํ•˜๊ณ ๋Š” ์•„์˜ˆ ์ฒ˜์Œ ๋ดค์„ ๋‚ด์šฉ๋“ค์ธ๋ฐ, ์ง€๊ธˆ์€ ์Šค์ณ๊ฐ€๋“ฏ ๋“ค์–ด๋ณด๊ณ  ๋ญ”์ง€๋Š” ์ž˜ ๋ชจ๋ฅด๋Š” ๋‚ด์šฉ๋“ค์ด์—ˆ๋‹ค.

 

ํ™”์ƒ ๊ฐ๋…์ด ์žˆ๊ธด ํ–ˆ์ง€๋งŒ ๋‹ค๋ฅธ ๊ธฐ์—…๋“ค์ฒ˜๋Ÿผ ์ฒ ์ €ํ•˜์ง€๋Š” ์•Š์•˜๋‹ค.

ํ™”๋ฉด ๊ณต์œ ์™€ ํ•ธ๋“œํฐ ๋ชจ๋‹ˆํ† ์•ฑ๋งŒ ์‚ฌ์šฉํ–ˆ๊ณ  ์›น์บ ์€ ์ผœ์ง€ ์•Š์•˜๋‹ค. ์‹œํ—˜ ์ „ ์ฃผ๋ณ€ ํ™˜๊ฒฝ ์ฒดํฌ๋„ ์ง„ํ–‰๋˜์ง€ ์•Š์•˜๋‹ค.

์•Œ์•„์„œ ์ ๋‹นํžˆ ์ •๋ˆ๋œ ํ™˜๊ฒฝ์—์„œ ์‹œํ—˜์„ ์น˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค.

์•„๋งˆ CS ๋ฌธ์ œ ๋•Œ๋ฌธ์— ํ™”์ƒ๊ฐ๋…์ด ์žˆ์—ˆ๋˜ ๋“ฏํ•˜๋‹ค.

 

1์ฐจ ์ฝ”ํ…Œ๊ฐ€ ์‰ฌ์› ๋˜ ๋งŒํผ 2์ฐจ ์ฝ”ํ…Œ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ๋‚œ์ด๋„๊ฐ€ ์žˆ์—ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  1์ฐจ์™€ ๋‹ฌ๋ฆฌ ์ฃผ์–ด์ง„ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์— ์—ฃ์ง€ ์ผ€์ด์Šค๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์•„์„œ ์Šค์Šค๋กœ ์ƒ๊ฐํ•ด๋ด์•ผ ํ–ˆ๋‹ค.

๊ฒฝํ—˜ ๋ฉด์—์„œ ์‘์‹œํ•œ ๊ฒŒ ์ปค์„œ 2์‹œ๊ฐ„ ์ •๋„ ํ’€๊ณ , ์„ธ์„ธํ•œ ๊ฒ€ํ† ๋Š” ํ•˜์ง€ ์•Š๊ณ  ์ข…๋ฃŒํ–ˆ๋‹ค.

 

 

 

 

 

>> ๊ฒฐ๊ณผ : ๋ถˆํ•ฉ๊ฒฉ

 

์นด์นด์˜ค ๋ชจ๋นŒ๋ฆฌํ‹ฐ 2์ฐจ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ

๊ฒฐ๊ณผ ๋ฐœํ‘œ๊นŒ์ง€ 4์ผ ์†Œ์š”.

 

2์ฐจ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋Š” ํ•ฉ๊ฒฉ์ž์™€ ๋ถˆํ•ฉ๊ฒฉ์ž๊ฐ€ ๊ฐ™์€ ๋‚  ๋ฉ”์ผ์„ ๋ฐ›์•˜๋‹ค.

์นด์นด์˜ค ๋ณธ์‚ฌ ๊ฑด๋ฌผ์— ํ•œ ๋ฒˆ ๊ฐ€๋ณด๊ณ  ์‹ถ์–ด์„œ ์•„์‰ฝ๊ธด ํ–ˆ์ง€๋งŒ CS ๋•Œ๋ฌธ์— ์–ด๋Š ์ •๋„ ์˜ˆ์ƒ์€ ํ–ˆ๋‹ค.

์ „๊ณต ์ง€์‹ ํ•„๊ธฐ์‹œํ—˜์€ ์ฒ˜์Œ ๋ณธ ๊ฑด๋ฐ ์ข‹์€ ๊ฒฝํ—˜์ด์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.