Algorithm

tiling ์„ธ๋กœ ๊ธธ์ด 2, ๊ฐ€๋กœ ๊ธธ์ด n์ธ 2 x n ๋ณด๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. 2 x 1 ํฌ๊ธฐ์˜ ํƒ€์ผ์„ ๊ฐ€์ง€๊ณ  ์ด ๋ณด๋“œ๋ฅผ ์ฑ„์šฐ๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ์˜ ์ˆ˜ ๋ฌธ์ œ๋Š” ์ผ๋‹จ ์ž‘์€ ์ˆ˜๋ฅผ ์†์ˆ˜ ๊ณ„์‚ฐํ•ด์„œ ๊ทœ์น™์„ ์ฐพ์•„๊ฐ€๋Š” ๊ฒƒ์ด ๋น ๋ฅด๋‹ค. ๋ชจ์•„๋†“๊ณ  ๋ณด๋‹ˆ ๊ทœ์น™์„ฑ์ด ๋ณด์ธ๋‹ค n=1 -> 1 n=2 -> 2 n=3 -> 3 n=4 -> 5 n=5 -> 8 ... ์„ธ๋กœ์˜ ๊ธธ์ด๋Š” ๊ณ ์ •๋œ ์ฑ„๋กœ ๊ฐ€๋กœ์˜ ๊ธธ์ด๋งŒ ๋Š˜์–ด๋‚œ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์—, ์ชผ๊ฐœ์–ด์„œ ์ƒ๊ฐํ•˜๋ฉด ํŽธ๋ฆฌํ•˜๋‹ค. ๊ฒฐ๊ตญ ํ•œ ์นธ์„ ์ฐจ์ง€ํ•˜๋Š” 2x1์„ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ๋ชจ์–‘์ด ๋ฐ”๋กœ ์ „ (n-1)๊ณผ ๊ฐ™๊ณ , ๋‘ ์นธ์„ ์ฐจ์ง€ํ•˜๋Š” ์ตœ์†Œ 2x2๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ๋ชจ์–‘์ด (n-2)์™€ ๊ฐ™๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰ ํ”ผ๋ณด๋‚˜์น˜์™€ ์™„์ „ ์œ ์‚ฌํ•œ ์ˆ˜์—ด์ด ๋˜๋Š” ๊ฒƒ. ๋‹จ์ˆœํ•œ ์žฌ๊ท€๋กœ ๋‚˜ํƒ€๋‚ด์–ด ๋ณด๋ฉด let t..
isSubsetOf ๋‘ ๊ฐœ์˜ ๋ฐฐ์—ด(base, sample)์„ ์ž…๋ ฅ๋ฐ›์•„ sample์ด base์˜ ๋ถ€๋ถ„์ง‘ํ•ฉ์ธ์ง€ ์—ฌ๋ถ€๋ฅผ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. const isSubsetOf = function (base, sample) { return sample.every((number) => base.includes(number)); } array ๋งค์„œ๋“œ์ธ every, inclueds์‚ฌ์šฉ. -> ์‹œ๊ฐ„ ์ดˆ๊ณผ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ผ๋‹จ ๋ฐฐ์—ด์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ–ˆ๋‹ค. base.sort((a, b) => a - b); sample.sort((a, b) => a - b); for(let i = 0; i < base.length; i++) { if(base[i] === sample[0]) { sample.shift(); } } i..
bubbleSort ์ •์ˆ˜๋ฅผ ์š”์†Œ๋กœ ๊ฐ–๋Š” ๋ฐฐ์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜์—ฌ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฒ„๋ธ” ์ •๋ ฌ(bubble sort)์€ ์—ฌ๋Ÿฌ ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜(์‚ฝ์ž… ์ •๋ ฌ, ํ€ต ์ •๋ ฌ, ๋ณ‘ํ•ฉ ์ •๋ ฌ, ๊ธฐ์ˆ˜ ์ •๋ ฌ ๋“ฑ) ์ค‘ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ž…๋‹ˆ๋‹ค. ๋ฒ„๋ธ” ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ์š”์†Œ๊ฐ€ ๋‘ ๋ฒˆ์งธ ์š”์†Œ๋ณด๋‹ค ํฌ๋ฉด, ๋‘ ์š”์†Œ์˜ ์œ„์น˜๋ฅผ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. (swap) ๋‘ ๋ฒˆ์งธ ์š”์†Œ์™€ ์„ธ ๋ฒˆ์งธ ์š”์†Œ๋ณด๋‹ค ํฌ๋ฉด, ๋‘ ์š”์†Œ์˜ ์œ„์น˜๋ฅผ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. (swap) 1, 2๋ฅผ ๋งˆ์ง€๋ง‰๊นŒ์ง€ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค. (๋งˆ์ง€๋ง‰์—์„œ ๋‘ ๋ฒˆ์งธ ์š”์†Œ์™€ ๋งˆ์ง€๋ง‰ ์š”์†Œ๋ฅผ ๋น„๊ต) 1~3์˜ ๊ณผ์ •์„ ํ•œ ๋ฒˆ ๊ฑฐ์น˜๊ฒŒ ๋˜๋ฉด, ๊ฐ€์žฅ ํฐ ์š”์†Œ๊ฐ€ ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰์œผ๋กœ ๋ฐ€๋ ค๋‚ฉ๋‹ˆ๋‹ค. 1~3์˜ ๊ณผ์ •์„ ์ฒซ ์š”์†Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค. 5๋ฅผ ํ†ตํ•ด ๋‘ ๋ฒˆ์งธ๋กœ ํฐ ์š”์†Œ๊ฐ€ ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ ๋ฐ”๋กœ ๋‘ ๋ฒˆ..
fibonacci ์•„๋ž˜์™€ ๊ฐ™์ด ์ •์˜๋œ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜์—ด ์ค‘ n๋ฒˆ์งธ ํ•ญ์˜ ์ˆ˜๋ฅผ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. (๋ฐ˜๋ณต๋ฌธ ์‚ฌ์šฉx) 0๋ฒˆ์งธ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋Š” 0์ด๊ณ , 1๋ฒˆ์งธ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋Š” 1์ž…๋‹ˆ๋‹ค. ๊ทธ ๋‹ค์Œ 2๋ฒˆ์งธ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋ถ€ํ„ฐ๋Š” ๋ฐ”๋กœ ์ง์ „์˜ ๋‘ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜์˜ ํ•ฉ์œผ๋กœ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... 7๋ฒˆ์งธ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๊ฐ€ ๋‚˜์˜ค๋Š” ๊ณผ์ • (n=7)์„ ๋‚˜์—ดํ•ด๋ณด๋ฉด, 0 1 1 = 0 + 1 2 = 1 + 1 3 = 2 + 1 5 = 3 + 2 8 = 5 + 3 13 = 8 + 5 ์ด๋ฅผ ํ•จ์ˆ˜๋กœ ํ‘œํ˜„ํ•ด๋ณด๋ฉด f(n) = f(n-1) + f(n-2) n>=2์ธ ์ž์—ฐ์ˆ˜, f(0) = 0 , f(1) = 1 ์ฆ‰ f(n)์€ ์ˆซ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์•„์„œ ์ด n+1 ๊ฐœ๋ฅผ ๋”ํ•˜๊ฒŒ ๋˜๋Š” ํ•จ์ˆ˜๊ฐ€ ๋œ๋‹ค. functio..
largestProductOfThree ์ •์ˆ˜๋ฅผ ์š”์†Œ๋กœ ๊ฐ–๋Š” ๋ฐฐ์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ 3๊ฐœ์˜ ์š”์†Œ๋ฅผ ๊ณฑํ•ด ๋‚˜์˜ฌ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€๊ฐ’์„ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์„น์…˜3๋“ค์–ด ๊ธ‰๊ฒฉํžˆ ์–ด๋ ค์›Œ์ง„ ๋‚œ์ด๋„์— ์˜คํ•จ๋งˆ๋กœ ํ•œ๋Œ€ ๋งž์€ ๊ธฐ๋ถ„.. ใ…Ž_ใ…Ž ์„น์…˜2๋ถ€ํ„ฐ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ฒŒ ๋œ ๋ฐ์ผ๋ฆฌ์ฝ”๋”ฉ. ์ผ๋‹จ ์ฒ˜์Œ์— ์ƒ๊ฐํ–ˆ๋˜ ๊ฒƒ์€, ์Œ์ˆ˜์™€ 0์ด ์„ž์—ฌ์žˆ์œผ๋‹ˆ ์ด๊ฑธ ์ฃผ์˜ํ•ด์•ผ๊ฒ ๋‹ค ์‹ถ์—ˆ๋˜ ๊ฑฐ์˜€์Œ. // ๋ฐฐ์—ด ์ค‘ (์ ˆ๋Œ“๊ฐ’์ด) ๊ฐ€์žฅ ํฐ ์ˆ˜ 3๊ฐœ? // ์Œ์ˆ˜๋Š” ์ง์ˆ˜ ๊ฐœ์—ฌ์•ผ ํ•จ. // 3๊ฐœ ์ค‘์— 0์€ ์—†์–ด์•ผ ํ•จ. let arr = [-1, 8, 0, -134, -44] arr.map(Math.abs) = [1, 8, 0, 134, 44] arr.map(Math.abs).sort() = [0, 1, 134, 44, 8] let plus = arr.map(Math.abs) plu..
์‹œ๊ฐ„ ๋ณต์žก๋„ O(์ž…๋ ฅ)O(1) < O(log n) < O(n) < O(n log n) < O(n^2) < O(2^2) < O(n!) ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๊ฐˆ ์ˆ˜๋ก ์‹คํ–‰ ํšŸ์ˆ˜๊ฐ€ ๋งŽ์€, ์‹œ๊ฐ„ ๋ณต์žก๋„๊ฐ€ ๋†’์€ ๊ฒƒ์ด๋‹ค.O(1)var n = []; // n์— ๊ณ„์†์ ์œผ๋กœ ์ˆซ์ž ๋Œ€์ž… function o1() { return (n[0] === 0) ? true : false; } // ๋ฐ์ดํ„ฐ๊ฐ€ ์ฆ๊ฐ€ํ•ด๋„ ์œ„ function o1 function์˜ ์„ฑ๋Šฅ์€ ๊ทธ๋Œ€๋กœ๋‹ค. O(n)let n = []; for (let i = 0; i < n.length; i++) { return n[i] } // ๋ฐฐ์—ด์˜ n์˜ ๊ธธ์ด๊ฐ€ ์ฆ๊ฐ€ํ•  ๋•Œ๋งˆ๋‹ค ์ฒ˜๋ฆฌ ์‹œ๊ฐ„์ด ์ฆ๊ฐ€ํ•œ๋‹ค.์ž…๋ ฅn๋งŒํผ ์ถœ๋ ฅ์„ ๋ฐ˜๋ณตํ•˜๋Š” ๋ฐ˜๋ณต๋ฌธ O(n^2)let n = []; for(let i = 0;..
ํ•ด์‹œ์˜ ๊ฐœ๋…ํ•ด์‹œ๋Š” ํ‚ค:๋ฐธ๋ฆฌ์˜ ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ๊ฐ–๋Š” ๋ฐฐ์—ด ์ „ํ™”๋ฒˆํ˜ธ๋ถ€์ฒ˜๋Ÿผ ๊ฒ€์ƒ‰์ฐฝ์— ์ด๋ฆ„(ํ‚ค)์„ ๊ฒ€์ƒ‰ -> ์ „ํ™”๋ฒˆํ˜ธ(๋ฐธ๋ฅ˜)๊ฐ€ ๋‚˜์˜ด ํ‚ค๊ฐ€ ์ŠคํŠธ๋ง์ด๋‹คํ•ด์‹œ๋งต ํ•จ์ˆ˜HashMap.put("A", true); ๋ผ๊ณ  ์ž…๋ ฅํ•˜๋ฉด ๋งˆ์น˜ HashMap["A"] = true;์›๋ž˜ ํ•ด์‹œ๋งตํ•จ์ˆ˜๋Š” a๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์ „์ œ๋กœ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— a๊ฐ€ ์—†๋‹ค๋ฉด ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ์ž‘์—…์ด ํ•„์š”. ๊ทธ๋ž˜์„œ a๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ํ™•์ธํ•ด์•ผ ํ•˜๋Š” ๋ฒˆ๊ฑฐ๋กœ์›€์ด ์žˆ๋Š”๋ฐ ์ด๊ฑธ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ์ด ๊ฒŸ์˜ฌ ํ‹ฐํดํŠธ ํ•จ์ˆ˜์ด๋‹ค ํ‚ค๊ฐ€ ์—†์„ ๊ฒฝ์šฐ ์—๋Ÿฌ์ฒ˜๋ฆฌ๋ฅผ ํ•œ ํ•จ์ˆ˜๋‚ด์—์„œ ์ „๋ถ€ํ•ด์ฃผ๋Š” ๊ฒƒ. get/ put/ getOrDefaultString์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ •๋ณด๋ฅผ ๊ธฐํญํ•˜๊ณ  ๊ด€๋ฆฌํ•ด์•ผ ๋  ๋•Œ (์ŠคํŠธ๋งํƒ€์ž…์„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ณด๋ฅผ ๊ธฐ๋กํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋ ค๋ฉด ๋‹จ์ˆœ๋ฐฐ์—ด์„ ์“ธ ์ˆ˜ ์—†์œผ๋‹ˆ ํ•ด์‹œ๋ฅผ ์“ฐ์ž) 1) ์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜ ..
25๋ฒˆ. tiling ์„ธ๋กœ ๊ธธ์ด 2, ๊ฐ€๋กœ ๊ธธ์ด n์ธ 2 x n ๋ณด๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. 2 x 1 ํฌ๊ธฐ์˜ ํƒ€์ผ์„ ๊ฐ€์ง€๊ณ  ์ด ๋ณด๋“œ๋ฅผ ์ฑ„์šฐ๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์“ด ๋‹ต let tiling = function (n) { // 2 x 4 ๋ณด๋“œ์— ํƒ€์ผ์„ ๋†“๋Š” ๊ฒฝ์šฐ // 1) ์ฒ˜์Œ์— ์„ธ๋กœ๋กœ ํ•˜๋‚˜ ๋†“๋Š” ๊ฒฝ์šฐ : 2 x 1 + 2 x 3 // 2) ๊ฐ€๋กœ๋กœ ๋†“๋Š” ๊ฒฝ์šฐ (๋ฐ‘์—๋„ ๊ฐ€๋กœ๋กœ ๋†“๊ฒŒ ๋จ) : 2 x 2 + 2 x 2 // => ์ฆ‰ n=4 ์ผ ๋•Œ ๊ฒฝ์šฐ์˜ ์ˆ˜ : n = 2, 3 ์ผ ๋•Œ๋ฅผ ๋”ํ•œ ๊ฒƒ (์žฌ๊ท€) let arr = [0,1,2]; const boxTiling = (n) => { if(arr[n]) return arr[n]; return arr[n] = boxTiling(n-1) + boxTili..
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ๋ชจ์Œ์‚ฌ์ „ ๋ฌธ์ œ ์„ค๋ช… ์‚ฌ์ „์— ์•ŒํŒŒ๋ฒณ ๋ชจ์Œ 'A', 'E', 'I', 'O', 'U'๋งŒ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”, ๊ธธ์ด 5 ์ดํ•˜์˜ ๋ชจ๋“  ๋‹จ์–ด๊ฐ€ ์ˆ˜๋ก๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์ „์—์„œ ์ฒซ ๋ฒˆ์งธ ๋‹จ์–ด๋Š” "A"์ด๊ณ , ๊ทธ๋‹ค์Œ์€ "AA"์ด๋ฉฐ, ๋งˆ์ง€๋ง‰ ๋‹จ์–ด๋Š” "UUUUU"์ž…๋‹ˆ๋‹ค. ๋‹จ์–ด ํ•˜๋‚˜ word๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ์ด ๋‹จ์–ด๊ฐ€ ์‚ฌ์ „์—์„œ ๋ช‡ ๋ฒˆ์งธ ๋‹จ์–ด์ธ์ง€ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”. ์ œํ•œ์‚ฌํ•ญ word์˜ ๊ธธ์ด๋Š” 1 ์ด์ƒ 5 ์ดํ•˜์ž…๋‹ˆ๋‹ค. word๋Š” ์•ŒํŒŒ๋ฒณ ๋Œ€๋ฌธ์ž 'A', 'E', 'I', 'O', 'U'๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ ์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช… ์ž…์ถœ๋ ฅ ์˜ˆ #1 ์‚ฌ์ „์—์„œ ์ฒซ ๋ฒˆ์งธ ๋‹จ์–ด๋Š” "A"์ด๊ณ , ๊ทธ๋‹ค์Œ์€ "AA", "AAA", "AAAA", "AAAAA", "AAAAE",..
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ๊ด„ํ˜ธ ๋ณ€ํ™˜ ๋ฌธ์ œ ์„ค๋ช… ์นด์นด์˜ค์— ์‹ ์ž… ๊ฐœ๋ฐœ์ž๋กœ ์ž…์‚ฌํ•œ "์ฝ˜"์€ ์„ ๋ฐฐ ๊ฐœ๋ฐœ์ž๋กœ๋ถ€ํ„ฐ ๊ฐœ๋ฐœ์—ญ๋Ÿ‰ ๊ฐ•ํ™”๋ฅผ ์œ„ํ•ด ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž‘์„ฑํ•œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•˜์—ฌ ๋ฌธ์ œ์ ์„ ๋ฐœ๊ฒฌํ•˜๊ณ  ์ˆ˜์ •ํ•˜๋ผ๋Š” ์—…๋ฌด ๊ณผ์ œ๋ฅผ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ์†Œ์Šค๋ฅผ ์ปดํŒŒ์ผํ•˜์—ฌ ๋กœ๊ทธ๋ฅผ ๋ณด๋‹ˆ ๋Œ€๋ถ€๋ถ„ ์†Œ์Šค ์ฝ”๋“œ ๋‚ด ์ž‘์„ฑ๋œ ๊ด„ํ˜ธ๊ฐ€ ๊ฐœ์ˆ˜๋Š” ๋งž์ง€๋งŒ ์ง์ด ๋งž์ง€ ์•Š์€ ํ˜•ํƒœ๋กœ ์ž‘์„ฑ๋˜์–ด ์˜ค๋ฅ˜๊ฐ€ ๋‚˜๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜์ •ํ•ด์•ผ ํ•  ์†Œ์Šค ํŒŒ์ผ์ด ๋„ˆ๋ฌด ๋งŽ์•„์„œ ๊ณ ๋ฏผํ•˜๋˜ "์ฝ˜"์€ ์†Œ์Šค ์ฝ”๋“œ์— ์ž‘์„ฑ๋œ ๋ชจ๋“  ๊ด„ํ˜ธ๋ฅผ ๋ฝ‘์•„์„œ ์˜ฌ๋ฐ”๋ฅธ ์ˆœ์„œ๋Œ€๋กœ ๋ฐฐ์น˜๋œ ๊ด„ํ˜ธ ๋ฌธ์ž์—ด์„ ์•Œ๋ ค์ฃผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ฐœ๋ฐœํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์šฉ์–ด์˜ ์ •์˜ '(' ์™€ ')' ๋กœ๋งŒ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด์ด ์žˆ์„ ๊ฒฝ์šฐ, '(' ์˜ ๊ฐœ์ˆ˜์™€ ')' ์˜ ๊ฐœ์ˆ˜๊ฐ€ ๊ฐ™๋‹ค๋ฉด ์ด๋ฅผ ๊ท ํ˜•์žกํžŒ ๊ด„ํ˜ธ ๋ฌธ์ž์—ด์ด๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์—ฌ๊ธฐ์— ..
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ๊ตฌ๋ช…์กฐ๋ผ ๋ฌธ์ œ ์„ค๋ช… ๋ฌด์ธ๋„์— ๊ฐ‡ํžŒ ์‚ฌ๋žŒ๋“ค์„ ๊ตฌ๋ช…๋ณดํŠธ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ตฌ์ถœํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ๋ช…๋ณดํŠธ๋Š” ์ž‘์•„์„œ ํ•œ ๋ฒˆ์— ์ตœ๋Œ€ 2๋ช…์”ฉ ๋ฐ–์— ํƒˆ ์ˆ˜ ์—†๊ณ , ๋ฌด๊ฒŒ ์ œํ•œ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์‚ฌ๋žŒ๋“ค์˜ ๋ชธ๋ฌด๊ฒŒ๊ฐ€ [70kg, 50kg, 80kg, 50kg]์ด๊ณ  ๊ตฌ๋ช…๋ณดํŠธ์˜ ๋ฌด๊ฒŒ ์ œํ•œ์ด 100kg์ด๋ผ๋ฉด 2๋ฒˆ์งธ ์‚ฌ๋žŒ๊ณผ 4๋ฒˆ์งธ ์‚ฌ๋žŒ์€ ๊ฐ™์ด ํƒˆ ์ˆ˜ ์žˆ์ง€๋งŒ 1๋ฒˆ์งธ ์‚ฌ๋žŒ๊ณผ 3๋ฒˆ์งธ ์‚ฌ๋žŒ์˜ ๋ฌด๊ฒŒ์˜ ํ•ฉ์€ 150kg์ด๋ฏ€๋กœ ๊ตฌ๋ช…๋ณดํŠธ์˜ ๋ฌด๊ฒŒ ์ œํ•œ์„ ์ดˆ๊ณผํ•˜์—ฌ ๊ฐ™์ด ํƒˆ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ตฌ๋ช…๋ณดํŠธ๋ฅผ ์ตœ๋Œ€ํ•œ ์ ๊ฒŒ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  ์‚ฌ๋žŒ์„ ๊ตฌ์ถœํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์˜ ๋ชธ๋ฌด๊ฒŒ๋ฅผ ๋‹ด์€ ๋ฐฐ์—ด people๊ณผ ๊ตฌ๋ช…๋ณดํŠธ์˜ ๋ฌด๊ฒŒ ์ œํ•œ limit๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ๋ชจ๋“  ์‚ฌ๋žŒ์„ ๊ตฌ์ถœํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๊ตฌ๋ช…๋ณดํŠธ ๊ฐœ์ˆ˜์˜ ์ตœ์†Ÿ๊ฐ’์„ return ํ•˜๋„๋ก solut..
10๋ฒˆ. ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ์—ฐ์†๋œ ํ•œ์ž๋ฆฌ ํ™€์ˆ˜ ์ˆซ์ž ์‚ฌ์ด์— '-'๋ฅผ ์ถ”๊ฐ€ํ•œ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. function insertDash(str) { let result = str[0] for (let i = 1; i
Dong _ hwa
'Algorithm' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก