728x90

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ 168

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋” ๋งต๊ฒŒ (C++)

๋ฌธ์ œ ์„ค๋ช… ๋งค์šด ๊ฒƒ์„ ์ข‹์•„ํ•˜๋Š” Leo๋Š” ๋ชจ๋“  ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๋ฅผ K ์ด์ƒ์œผ๋กœ ๋งŒ๋“ค๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๋ฅผ K ์ด์ƒ์œผ๋กœ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด Leo๋Š” ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๊ฐ€ ๊ฐ€์žฅ ๋‚ฎ์€ ๋‘ ๊ฐœ์˜ ์Œ์‹์„ ์•„๋ž˜์™€ ๊ฐ™์ด ํŠน๋ณ„ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ์„ž์–ด ์ƒˆ๋กœ์šด ์Œ์‹์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์„ž์€ ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜ = ๊ฐ€์žฅ ๋งต์ง€ ์•Š์€ ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜ + (๋‘ ๋ฒˆ์งธ๋กœ ๋งต์ง€ ์•Š์€ ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜ * 2) Leo๋Š” ๋ชจ๋“  ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๊ฐ€ K ์ด์ƒ์ด ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜์—ฌ ์„ž์Šต๋‹ˆ๋‹ค. Leo๊ฐ€ ๊ฐ€์ง„ ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๋ฅผ ๋‹ด์€ ๋ฐฐ์—ด scoville๊ณผ ์›ํ•˜๋Š” ์Šค์ฝ”๋นŒ ์ง€์ˆ˜ K๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ๋ชจ๋“  ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๋ฅผ K ์ด์ƒ์œผ๋กœ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์„ž์–ด์•ผ ํ•˜๋Š” ์ตœ์†Œ ํšŸ์ˆ˜๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ scovil..

๐Ÿ“• Algorithm 2020.12.24

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] K๋ฒˆ์งธ์ˆ˜ (C++)

๋ฌธ์ œ ์„ค๋ช… ๋ฐฐ์—ด array์˜ i๋ฒˆ์งธ ์ˆซ์ž๋ถ€ํ„ฐ j๋ฒˆ์งธ ์ˆซ์ž๊นŒ์ง€ ์ž๋ฅด๊ณ  ์ •๋ ฌํ–ˆ์„ ๋•Œ, k๋ฒˆ์งธ์— ์žˆ๋Š” ์ˆ˜๋ฅผ ๊ตฌํ•˜๋ ค ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด array๊ฐ€ [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3์ด๋ผ๋ฉด array์˜ 2๋ฒˆ์งธ๋ถ€ํ„ฐ 5๋ฒˆ์งธ๊นŒ์ง€ ์ž๋ฅด๋ฉด [5, 2, 6, 3]์ž…๋‹ˆ๋‹ค. 1์—์„œ ๋‚˜์˜จ ๋ฐฐ์—ด์„ ์ •๋ ฌํ•˜๋ฉด [2, 3, 5, 6]์ž…๋‹ˆ๋‹ค. 2์—์„œ ๋‚˜์˜จ ๋ฐฐ์—ด์˜ 3๋ฒˆ์งธ ์ˆซ์ž๋Š” 5์ž…๋‹ˆ๋‹ค. ๋ฐฐ์—ด array, [i, j, k]๋ฅผ ์›์†Œ๋กœ ๊ฐ€์ง„ 2์ฐจ์› ๋ฐฐ์—ด commands๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, commands์˜ ๋ชจ๋“  ์›์†Œ์— ๋Œ€ํ•ด ์•ž์„œ ์„ค๋ช…ํ•œ ์—ฐ์‚ฐ์„ ์ ์šฉํ–ˆ์„ ๋•Œ ๋‚˜์˜จ ๊ฒฐ๊ณผ๋ฅผ ๋ฐฐ์—ด์— ๋‹ด์•„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ œํ•œ์‚ฌํ•ญ array์˜ ๊ธธ์ด๋Š” 1 ์ด์ƒ 100 ์ดํ•˜์ž…๋‹ˆ๋‹ค. a..

๐Ÿ“• Algorithm 2020.12.23

CSR(Client Side Rendering)๊ณผ SSR(Server Side Rendering)

SPA์™€ MPA SPA (Single Page Application) : ํ•˜๋‚˜์˜ HTML ํŒŒ์ผ์„ ๊ธฐ๋ฐ˜์œผ๋กœ JS๋ฅผ ์ด์šฉํ•ด ํ™”๋ฉด์˜ ์ปจํ…์ธ ๋ฅผ ๋™์ ์œผ๋กœ ๋ฐ”๊พธ๋Š” ๋ฐฉ์‹์˜ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ (์ „ํ†ต์ ์ธ ๋ Œ๋”๋ง ๋ฐฉ์‹ : CSR) MPA (Multiple Page Application) : ์‚ฌ์šฉ์ž๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ์š”์ฒญํ•  ๋•Œ๋งˆ๋‹ค, ์›น ์„œ๋ฒ„๊ฐ€ ์š”์ฒญํ•œ UI์™€ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ HTML๋กœ ํŒŒ์‹ฑํ•ด์„œ ๋ณด์—ฌ์ฃผ๋Š” ๋ฐฉ์‹์˜ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ (์ „ํ†ต์ ์ธ ๋ Œ๋”๋ง ๋ฐฉ์‹ : SSR) CSR CSR์—์„  ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์„œ๋ฒ„์— HTML๊ณผ JS ํŒŒ์ผ์„ ์š”์ฒญํ•œ ํ›„, ๋กœ๋“œ๋˜๋ฉด ์‚ฌ์šฉ์ž์˜ ์ƒํ˜ธ์ž‘์šฉ์— ๋”ฐ๋ผ JS๋ฅผ ์ด์šฉํ•ด์„œ ๋™์ ์œผ๋กœ ๋ Œ๋”๋ง์„ ์‹œํ‚จ๋‹ค. ์žฅ์  ์ฒซ ๋กœ๋”ฉ๋งŒ ๊ธฐ๋‹ค๋ฆฌ๋ฉด, ๋™์ ์œผ๋กœ ๋น ๋ฅด๊ฒŒ ๋ Œ๋”๋ง → ์‚ฌ์šฉ์ž ๊ฒฝํ—˜(UX)์ด ์ข‹์Œ ์„œ๋ฒ„์—๊ฒŒ ์š”์ฒญํ•˜๋Š” ํšŸ์ˆ˜ ํ›จ์”ฌ ์ ์Œ → ์„œ๋ฒ„์˜ ๋ถ€๋‹ด..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜ (C++)

์ˆ˜๋งŽ์€ ๋งˆ๋ผํ†ค ์„ ์ˆ˜๋“ค์ด ๋งˆ๋ผํ†ค์— ์ฐธ์—ฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋‹จ ํ•œ ๋ช…์˜ ์„ ์ˆ˜๋ฅผ ์ œ์™ธํ•˜๊ณ ๋Š” ๋ชจ๋“  ์„ ์ˆ˜๊ฐ€ ๋งˆ๋ผํ†ค์„ ์™„์ฃผํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋งˆ๋ผํ†ค์— ์ฐธ์—ฌํ•œ ์„ ์ˆ˜๋“ค์˜ ์ด๋ฆ„์ด ๋‹ด๊ธด ๋ฐฐ์—ด participant์™€ ์™„์ฃผํ•œ ์„ ์ˆ˜๋“ค์˜ ์ด๋ฆ„์ด ๋‹ด๊ธด ๋ฐฐ์—ด completion์ด ์ฃผ์–ด์งˆ ๋•Œ, ์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜์˜ ์ด๋ฆ„์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ œํ•œ์‚ฌํ•ญ ๋งˆ๋ผํ†ค ๊ฒฝ๊ธฐ์— ์ฐธ์—ฌํ•œ ์„ ์ˆ˜์˜ ์ˆ˜๋Š” 1๋ช… ์ด์ƒ 100,000๋ช… ์ดํ•˜์ž…๋‹ˆ๋‹ค. completion์˜ ๊ธธ์ด๋Š” participant์˜ ๊ธธ์ด๋ณด๋‹ค 1 ์ž‘์Šต๋‹ˆ๋‹ค. ์ฐธ๊ฐ€์ž์˜ ์ด๋ฆ„์€ 1๊ฐœ ์ด์ƒ 20๊ฐœ ์ดํ•˜์˜ ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฐธ๊ฐ€์ž ์ค‘์—๋Š” ๋™๋ช…์ด์ธ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ [leo, kiki, eden] [eden, kiki] leo [marina, josi..

๐Ÿ“• Algorithm 2020.12.18

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก (C++)

๋ฌธ์ œ ์„ค๋ช… ์ „ํ™”๋ฒˆํ˜ธ๋ถ€์— ์ ํžŒ ์ „ํ™”๋ฒˆํ˜ธ ์ค‘, ํ•œ ๋ฒˆํ˜ธ๊ฐ€ ๋‹ค๋ฅธ ๋ฒˆํ˜ธ์˜ ์ ‘๋‘์–ด์ธ ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋ ค ํ•ฉ๋‹ˆ๋‹ค. ์ „ํ™”๋ฒˆํ˜ธ๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์„ ๊ฒฝ์šฐ, ๊ตฌ์กฐ๋Œ€ ์ „ํ™”๋ฒˆํ˜ธ๋Š” ์˜์„์ด์˜ ์ „ํ™”๋ฒˆํ˜ธ์˜ ์ ‘๋‘์‚ฌ์ž…๋‹ˆ๋‹ค. ๊ตฌ์กฐ๋Œ€ : 119 ๋ฐ•์ค€์˜ : 97 674 223 ์ง€์˜์„ : 11 9552 4421 ์ „ํ™”๋ฒˆํ˜ธ๋ถ€์— ์ ํžŒ ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ ๋‹ด์€ ๋ฐฐ์—ด phone_book ์ด solution ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ์–ด๋–ค ๋ฒˆํ˜ธ๊ฐ€ ๋‹ค๋ฅธ ๋ฒˆํ˜ธ์˜ ์ ‘๋‘์–ด์ธ ๊ฒฝ์šฐ๊ฐ€ ์žˆ์œผ๋ฉด false๋ฅผ ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด true๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ phone_book์˜ ๊ธธ์ด๋Š” 1 ์ด์ƒ 1,000,000 ์ดํ•˜์ž…๋‹ˆ๋‹ค. ๊ฐ ์ „ํ™”๋ฒˆํ˜ธ์˜ ๊ธธ์ด๋Š” 1 ์ด์ƒ 20 ์ดํ•˜์ž…๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ์ œ phone_bookreturn [119, 9767..

๐Ÿ“• Algorithm 2020.12.18

C++ STL - ๋ฒกํ„ฐ ๋ผ๋ฆฌ ์—ฐ์‚ฐ (ํ•ฉ์ง‘ํ•ฉ, ์ฐจ์ง‘ํ•ฉ, ๊ต์ง‘ํ•ฉ, ํ•ฉ๋ณ‘)

ํ•ฉ์ง‘ํ•ฉ : merge() / set_union() ๋‘ ๋ฒกํ„ฐ๋ฅผ ๋ถ™ํžŒ๋‹ค. ๋‘ ํ•จ์ˆ˜์˜ ์ฐจ์ด์ ์ด ์žˆ๋‹ค. merge()๋Š” ์ค‘๋ณต ํ—ˆ์šฉ, set_union()์€ ์ค‘๋ณต ์ œ๊ฑฐ Iterator iter ๋ณ€์ˆ˜์— ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ๊ฒฐ๊ณผ์˜ ๋์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฐ’์„ ๋ฐ˜ํ™˜๋ฐ›๋Š”๋‹ค. ๊ทธ iter์—์„œ ๋ฒกํ„ฐ์˜ ์‹œ์ž‘์ ์„ ๋นผ์„œ ๊ฐ’์ด ๋ช‡ ๊ฐœ์ธ์ง€ ์•Œ์•„๋‚ด์„œ ๊ทธ ๊ฐ’์œผ๋กœ resize() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ฒกํ„ฐ ํฌ๊ธฐ ์กฐ์ ˆ ํ›„ ์ˆœํšŒ #include #include #include using namespace std; int main(){ // ๋ฐ˜๋“œ์‹œ ์ •๋ ฌ๋œ ํ›„ ์‚ฌ์šฉ ๊ฐ€๋Šฅ vector a = {1, 2, 3, 4, 5}; vector b = {5, 6, 7, 8, 9}; vector result1(10); vector result2(10); vector::iter..

๐Ÿ“• Algorithm 2020.12.18

(2) ๊ฐœ์ธ์žฌ๋ฌด์„ค๊ณ„์˜ 6๋‹จ๊ณ„

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

(1) ๊ฐœ์ธ์žฌ๋ฌด์„ค๊ณ„์˜ ์ดํ•ด

๊ฐœ์ธ์žฌ๋ฌด์„ค๊ณ„๋ž€? = ์ธ์ƒ ์„ค๊ณ„(Life Planning) ๊ฐœ์ธ์ด ์ž์‹ ์˜ ์‚ถ์˜ ๋ชฉํ‘œ๋ฅผ ํŒŒ์•…ํ•˜๊ณ  ๊ทธ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ์ž์‹ ์˜ ์žฌ๋ฌด์ , ๋น„์žฌ๋ฌด์  ์ž์›์„ ์ ์ ˆํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๋Š” ์ผ๋ จ์˜ ๊ณผ์ • ๊ฐœ์ธ์ด ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์‚ถ์˜ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•˜๋Š” ๊ฒƒ ๊ธˆ์ „์  ๋ชฉํ‘œ ๋‹ฌ์„ฑ์„ ํ†ตํ•ด ์ธ์ƒ์˜ ๋ชฉํ‘œ ํŒŒ์•… ๊ตฌ์ฒด์ ์œผ๋กœ ์„ค์ •๋˜์ง€ ์•Š์€ ์ธ์ƒ์˜ ๊ถ๊ทน์  ๋ชฉ์ ๊ณผ ๋‹ค์–‘ํ•œ ์žฌ๋ฌด์ , ๋น„์žฌ๋ฌด์  ๋ชฉํ‘œ๋ฅผ ํŒŒ์•…ํ•˜๊ณ  ์„ค์ • ๊ฐœ์ธ์˜ ์žฌ๋ฌด์ , ๋น„์žฌ๋ฌด์  ์ž์›์„ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ ์žฌ๋ฌด์  ์ž์› : ์ž์‚ฐ, ๋ถ€์ฑ„, ์†Œ๋“ ๋น„์žฌ๋ฌด์  ์ž์› : ๊ฐ€์น˜, ํƒœ๋„, ์‹ ๋…, ๊ต์œก์ˆ˜์ค€, ์‚ฌํšŒ์  ์œ„์น˜ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•ด ๋‚˜๊ฐ€๋Š” ๊ณผ์ •(Process) ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•ด๊ฐ€๋Š” ์ผ๋ จ์˜ ๊ณผ์ • ๊ฐœ์ธ์žฌ๋ฌด์„ค๊ณ„์˜ ๋‹ค์–‘ํ•œ ์ •์˜ ๋ฆฌํŠผ, ๊ทธ๋ ˆ์ด๋ธ”๊ณผ ํด๋ฝ(Lytton, Grable and Klock)์˜ ๊ฐœ์ธ์žฌ๋ฌด์„ค๊ณ„ ์ •์˜ ์˜ˆ์‹œ(2006) ..

๋ฐ˜์‘ํ˜•