์ „์ฒด ๊ธ€ 130

[์ธํ”„๋Ÿฐ ์„น์…˜7] ์„ ํƒ ์ •๋ ฌ (Javascript)

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป๋ฌธ์ œ๋งํฌ [์ธํ”„๋Ÿฐ ์„น์…˜7] ์„ ํƒ ์ •๋ ฌ (Javascript) ์œ ๋ฃŒ ๊ฐ•์˜์ธ ๊ด€๊ณ„๋กœ ๋ฌธ์ œ ์„ค๋ช…์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. โœ๏ธIdea Sketch 2021-06-27 1. ์„ ํƒ ์ •๋ ฌ? ์ฒซ๋ฒˆ์งธ ์›์†Œ์™€, ๋‚˜๋จธ์ง€ ์›์†Œ ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์„ ๊ตํ™˜ํ•˜๋Š” ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ฒซ๋ฒˆ์งธ ์›์†Œ๋ถ€ํ„ฐ ๋งˆ์ง€๋ง‰๊นŒ์ง€ ๋ฐ˜๋ณต 2. for ๋ฐ˜๋ณต๋ฌธ 2๊ฐœ ์‚ฌ์šฉ for (let i=0; i

[์ธํ”„๋Ÿฐ ์„น์…˜6] ๊ต์œก๊ณผ์ • ์„ค๊ณ„ (Javascript)

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป๋ฌธ์ œ๋งํฌ [์ธํ”„๋Ÿฐ ์„น์…˜6] ๊ต์œก๊ณผ์ • ์„ค๊ณ„ (Javascript) ์œ ๋ฃŒ ๊ฐ•์˜์ธ ๊ด€๊ณ„๋กœ ๋ฌธ์ œ ์„ค๋ช…์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. โœ๏ธIdea Sketch 2021-06-27 1. ๋ฌด์กฐ๊ฑด c -> b -> a ์ˆœ์ด์–ด์•ผ ํ•œ๋‹ค 2. need๊ฐ€ ์•„๋‹Œ ๊ณผ๋ชฉ์€ ์ •๊ทœ์‹์œผ๋กœ ์ œ๊ฑฐํ•œ ํ›„, need์™€ ๋น„๊ตํ•˜๋ฉด? plan = plan.replace(/[^CBA]/g, ''); ๋ฌธ์ œ์  ์ œ์™ธํ•  ๋ฌธ์ž์—ด๋กœ need ๋ณ€์ˆ˜๋ฅผ ํ• ๋‹นํ•  ์ˆ˜ ์—†๋‹ค 3. need์™€ plan ๋‘˜ ๋‹ค queue๋กœ ์ƒ์„ฑ while(plan.length > 0) ํ•ญ์ƒ plan.shift() plan.shift()์™€ need[0]์ด ๋™์ผํ•œ ๊ฒฝ์šฐ need.shift() ๋งˆ์ง€๋ง‰์— need.length === 0 ์ด๋ฉด "YES", ์•„๋‹ˆ๋ฉด "NO" --> ์‚ผํ•ญ์—ฐ์‚ฐ์ž while(plan...

[์ธํ”„๋Ÿฐ ์„น์…˜6] ๊ณต์ฃผ ๊ตฌํ•˜๊ธฐ (Javascript)

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป๋ฌธ์ œ๋งํฌ [์ธํ”„๋Ÿฐ ์„น์…˜6] ๊ณต์ฃผ ๊ตฌํ•˜๊ธฐ (Javascript) ์œ ๋ฃŒ ๊ฐ•์˜์ธ ๊ด€๊ณ„๋กœ ๋ฌธ์ œ ์„ค๋ช…์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. โœ๏ธIdea Sketch 2021-06-27 queue๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฌธ์ œ์ž„์„ ๋Šฆ๊ฒŒ ํŒŒ์•… ์ฒซ๋ฒˆ์งธ ์‹œ๋„ : stack ์‚ฌ์šฉ 1. ์™•์ž๊ฐ€ ํŠน์ •์ˆซ์ž K๋ฅผ ์™ธ์น˜๋ฉด ์ œ์™ธ, ์ฒ˜์Œ๋ถ€ํ„ฐ ์‹œ์ž‘ 2. stack ์„ ์ƒ์„ฑํ•˜์—ฌ ์ดˆ๊ธฐ๊ฐ’ 1, ์ œ์™ธ๋˜๋ฉด 0 let stack = Array.from({length: n}, v => 0); 3. ์™•์ž ์ œ์™ธ ๋กœ์ง stack ๊ฐ’์ด 1์ธ ๊ฒฝ์šฐ, num++ num === k ์ธ ๊ฒฝ์šฐ stack ๊ฐ’์€ 0, num === 0; ์„ฑ๋Šฅ ์ด์Šˆ ์˜ˆ์ธก ์ˆ˜๋งŽ์€ ์™•์ž๊ฐ€ ์ œ์™ธ๋œ ์ƒํ™ฉ์—์„œ๋„ stack์„ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์ˆœํšŒ ๋ฌธ์ œ์  ๋งˆ์ง€๋ง‰ ๋‚จ์€ ์™•์ž๋ฅผ ์ถœ๋ ฅํ•ด์•ผ ํ•จ ๋งค๋ฒˆ 1์ธ stack๊ฐ’์ด ๋ช‡ ๊ฐœ์ธ์ง€ ํ™•์ธ..

[์ธํ”„๋Ÿฐ ์„น์…˜6] ์‡ ๋ง‰๋Œ€๊ธฐ (Javascript)

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป๋ฌธ์ œ๋งํฌ [์ธํ”„๋Ÿฐ ์„น์…˜6] ์‡ ๋ง‰๋Œ€๊ธฐ (Javascript) ์œ ๋ฃŒ ๊ฐ•์˜์ธ ๊ด€๊ณ„๋กœ ๋ฌธ์ œ ์„ค๋ช…์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. โœ๏ธIdea Sketch 2021-06-27 1. ()๊ฐ€ ๋ ˆ์ด์ €, ๋ ˆ์ด์ €๋Š” ์Šคํƒ์— ์Œ“์ง€ ์•Š๋Š”๋‹ค. 2. () ๋ ˆ์ด์ € ํ•˜๋‚˜๊ฐ€ ์žˆ์„ ๋•Œ๋งˆ๋‹ค cnt += stack.length 3. ๋ ˆ์ด์ €๊ฐ€ ์•„๋‹Œ ( ๊ฐ€ ๋‚˜์˜ค๋ฉด stack.push(); cnt++; 4. ๋ ˆ์ด์ €๊ฐ€ ์•„๋‹Œ ) ๊ฐ€ ๋‚˜์˜ค๋ฉด stack.pop(); 5. ๋ ˆ์ด์ € ํŒ๋ณ„ ์–ด๋–ป๊ฒŒ? ( ๊ฐ€ ๋‚˜์˜ฌ ๋•Œ๋งˆ๋‹ค ๋‹ค์Œ ์›์†Œ๊ฐ€ ) ์ธ์ง€ ํŒ๋ณ„ --> for (let x of str)์„ ๋ชป ์”€ ) ๊ฐ€ ๋‚˜์˜ฌ ๋•Œ๋งˆ๋‹ค ์Šคํƒ ๋งˆ์ง€๋ง‰ ๊ฐ’์ด ( ์ธ์ง€ ํŒ๋ณ„ --> ์Šคํƒ์— ์Œ“์ด๋Š” ๊ฐ’์€ ํ•ญ์ƒ ( ๋ผ์„œ ์‹คํŒจ ํ•ญ์ƒ ๊ทธ ๋‹ค์Œ ์›์†Œ๋ฅผ ํ™•์ธํ•ด๋ณด๋Š” ๊ฒŒ ๋” ๋‚˜์€๊ฐ€? --> 6๋ฒˆ ์ผ๋‹จ stack์— ๋„ฃ..

[์ธํ”„๋Ÿฐ ์„น์…˜6] ํ›„์œ„์‹ ์—ฐ์‚ฐ postfix (Javascript)

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป๋ฌธ์ œ๋งํฌ [์ธํ”„๋Ÿฐ ์„น์…˜6] ํ›„์œ„์‹ ์—ฐ์‚ฐ postfix (Javascript) ์œ ๋ฃŒ ๊ฐ•์˜์ธ ๊ด€๊ณ„๋กœ ๋ฌธ์ œ ์„ค๋ช…์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. โœ๏ธIdea Sketch 2021-06-27 1. str์˜ ์›์†Œ๋ฅผ ๋ฐ˜๋ณต for (let x of str) { } 2. x๊ฐ€ ์ˆซ์ž๋ฉด stack.push(); 3. x๊ฐ€ ์—ฐ์‚ฐ๊ธฐํ˜ธ๋ฉด stack.pop(); ๋กœ ์ˆซ์ž๋ฅผ ๊บผ๋‚ด์˜จ ํ›„ stack[stack.length-1] ๊ณผ ์—ฐ์‚ฐ 4. isNaN(s) ์‚ฌ์šฉ s์ด ์ˆซ์ž๊ฐ€ ์•„๋‹Œ ๊ฒฝ์šฐ true ๋ฆฌํ„ด if (isNaN(x)) { let n = stack.pop(); if (x === '+') stack[stack.length-1] += n; else if (x === '-') stack[stack.length-1] -= n; else if (x ..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 64061] ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ ๊ฒŒ์ž„ (Javascript)

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป๋ฌธ์ œ๋งํฌ [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 64061] ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ ๊ฒŒ์ž„ (Javascript) ๋ฌธ์ œ ์„ค๋ช… ๊ฒŒ์ž„๊ฐœ๋ฐœ์ž์ธ "์ฃ ๋ฅด๋””"๋Š” ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ ๊ธฐ๊ณ„๋ฅผ ๋ชจ๋ฐ”์ผ ๊ฒŒ์ž„์œผ๋กœ ๋งŒ๋“ค๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. "์ฃ ๋ฅด๋””"๋Š” ๊ฒŒ์ž„์˜ ์žฌ๋ฏธ๋ฅผ ๋†’์ด๊ธฐ ์œ„ํ•ด ํ™”๋ฉด ๊ตฌ์„ฑ๊ณผ ๊ทœ์น™์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ฒŒ์ž„ ๋กœ์ง์— ๋ฐ˜์˜ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ฒŒ์ž„ ํ™”๋ฉด์€ "1 x 1" ํฌ๊ธฐ์˜ ์นธ๋“ค๋กœ ์ด๋ฃจ์–ด์ง„ "N x N" ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐ ๊ฒฉ์ž์ด๋ฉฐ ์œ„์ชฝ์—๋Š” ํฌ๋ ˆ์ธ์ด ์žˆ๊ณ  ์˜ค๋ฅธ์ชฝ์—๋Š” ๋ฐ”๊ตฌ๋‹ˆ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. (์œ„ ๊ทธ๋ฆผ์€ "5 x 5" ํฌ๊ธฐ์˜ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค). ๊ฐ ๊ฒฉ์ž ์นธ์—๋Š” ๋‹ค์–‘ํ•œ ์ธํ˜•์ด ๋“ค์–ด ์žˆ์œผ๋ฉฐ ์ธํ˜•์ด ์—†๋Š” ์นธ์€ ๋นˆ์นธ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ์ธํ˜•์€ "1 x 1" ํฌ๊ธฐ์˜ ๊ฒฉ์ž ํ•œ ์นธ์„ ์ฐจ์ง€ํ•˜๋ฉฐ ๊ฒฉ์ž์˜ ๊ฐ€์žฅ ์•„๋ž˜ ์นธ๋ถ€ํ„ฐ ์ฐจ๊ณก์ฐจ๊ณก ์Œ“์—ฌ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒŒ์ž„ ์‚ฌ์šฉ์ž๋Š” ํฌ๋ ˆ์ธ์„ ์ขŒ์šฐ๋กœ ์›€์ง์—ฌ์„œ ๋ฉˆ์ถ˜ ์œ„์น˜์—์„œ ๊ฐ€์žฅ..

[์ธํ”„๋Ÿฐ ์„น์…˜6] ๊ด„ํ˜ธ๋ฌธ์ž์ œ๊ฑฐ (Javascript)

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป๋ฌธ์ œ๋งํฌ [์ธํ”„๋Ÿฐ ์„น์…˜6] ๊ด„ํ˜ธ๋ฌธ์ž์ œ๊ฑฐ (Javascript) ์œ ๋ฃŒ ๊ฐ•์˜์ธ ๊ด€๊ณ„๋กœ ๋ฌธ์ œ ์„ค๋ช…์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. โœ๏ธIdea Sketch 2021-06-26 1. x === '('์ธ ๊ฒฝ์šฐ stack.push(x); 2. x === ')'์ธ ๊ฒฝ์šฐ stack.pop(); 3. x๊ฐ€ ๋ฌธ์ž์ด๋ฉด์„œ stack.length === 0 ์ธ ๊ฒฝ์šฐ res += x; for (let x of str) { if (x === '(') stack.push(x); else if (x === ')') stack.pop(); else if (stack.length === 0) res += x; } โœ๏ธ์†Œ์Šค์ฝ”๋“œ 2021-06-26 function solution(str) { let res = ''; let stack = []; for..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 12909] ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ (Javascript)

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป๋ฌธ์ œ๋งํฌ [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 12909] ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ (Javascript) ๋ฌธ์ œ ์„ค๋ช… ๊ด„ํ˜ธ๊ฐ€ ๋ฐ”๋ฅด๊ฒŒ ์ง์ง€์–ด์กŒ๋‹ค๋Š” ๊ฒƒ์€ '(' ๋ฌธ์ž๋กœ ์—ด๋ ธ์œผ๋ฉด ๋ฐ˜๋“œ์‹œ ์ง์ง€์–ด์„œ ')' ๋ฌธ์ž๋กœ ๋‹ซํ˜€์•ผ ํ•œ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด "()()" ๋˜๋Š” "(())()" ๋Š” ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ์ž…๋‹ˆ๋‹ค. ")()(" ๋˜๋Š” "(()(" ๋Š” ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ๊ด„ํ˜ธ์ž…๋‹ˆ๋‹ค. '(' ๋˜๋Š” ')' ๋กœ๋งŒ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด s๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋ฌธ์ž์—ด s๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ์ด๋ฉด true๋ฅผ return ํ•˜๊ณ , ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ๊ด„ํ˜ธ์ด๋ฉด false๋ฅผ return ํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”. ์ œํ•œ์‚ฌํ•ญ ๋ฌธ์ž์—ด s์˜ ๊ธธ์ด : 100,000 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜ ๋ฌธ์ž์—ด s๋Š” '(' ๋˜๋Š” ')' ๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ s answer "()()" true "((..

[์ธํ”„๋Ÿฐ ์„น์…˜5] ๋ชจ๋“  ์•„๋‚˜๊ทธ๋žจ ์ฐพ๊ธฐ (Javascript)

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป๋ฌธ์ œ๋งํฌ [์ธํ”„๋Ÿฐ ์„น์…˜5] ๋ชจ๋“  ์•„๋‚˜๊ทธ๋žจ ์ฐพ๊ธฐ (Javascript) ์œ ๋ฃŒ ๊ฐ•์˜์ธ ๊ด€๊ณ„๋กœ ๋ฌธ์ œ ์„ค๋ช…์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. โœ๏ธIdea Sketch 2021-06-25 1. ๋ถ€๋ถ„๋ฌธ์ž์—ด์„ ์ผ์ผ์ด str.substring()์œผ๋กœ ์ž˜๋ผ๋‚ด์•ผํ•˜๋‚˜? ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์€ ์—†๋‚˜? 2. ๋ฌธ์ž์—ด T๋ฅผ hash๋กœ ์ „ํ™˜ 3. 2๋ฒˆ๊ณผ ๋™์‹œ์— ๋ฌธ์ž์—ด S๋ฅผ ๋ฌธ์ž์—ด T์˜ ๊ธธ์ด๋งŒํผ๋งŒ hash๋กœ ์ „ํ™˜ for (let i=0; i

[์ธํ”„๋Ÿฐ ์„น์…˜5] ์•„๋‚˜๊ทธ๋žจ (Javascript)

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป๋ฌธ์ œ๋งํฌ [์ธํ”„๋Ÿฐ ์„น์…˜5] ์•„๋‚˜๊ทธ๋žจ (Javascript) ์œ ๋ฃŒ ๊ฐ•์˜์ธ ๊ด€๊ณ„๋กœ ๋ฌธ์ œ ์„ค๋ช…์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. โœ๏ธIdea Sketch 2021-06-25 1. ๋ฌธ์ž์—ด ๋‘˜๋‹ค hash ์ „ํ™˜ hash1[str1[i]] ๊ฐ’์ด ์žˆ์œผ๋ฉด hash1[str1[i]] + 1 hash1[str1[i]] ๊ฐ’์ด ์—†์œผ๋ฉด 0 + 1 let hash1 = new Map(); let hash2 = new Map(); for (let i=0; i 1, 'b' => 1, 'a' => 1, 'e' => 1, 'C' => 1 } console.log(hash2); // output: Map { 'A' => 1, 'b' => 1, 'a' => 1, 'e' => 1, 'C' => 1 } console.log(hash1 === hash2); ..