avatar

Page 24

  • Codility - Count div

    ## Count Div ### ๋ฌธ์ œ A์™€ A๋ณด๋‹ค ๊ฐ™๊ฑฐ๋‚˜ ํฐ B, ๊ทธ๋ฆฌ๊ณ  K๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, A์™€ B์‚ฌ์ด์— K๋กœ ๋‚˜๋ˆ„๋ฉด ๋‚˜๋จธ์ง€๊ฐ€ 0์ธ ์ˆซ์ž์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋ผ. ``` A=6 B=11 K=2 6, 8, 10 ์ด ์žˆ์œผ๋ฏ€๋กœ, ์ •๋‹ต์€ 3 ์ด๋‹ค. ``` ### ํ’€์ด ```javascript function solution(A, B, K) { return ...

    1๋ถ„
  • Codility - Genomic Range Query

    ## Genomic Range Query ### ๋ฌธ์ œ DNA๋Š” A, C, G, T๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋Š”๋ฐ, ์ด๋Š” ๊ฐ๊ฐ 1, 2, 3, 4๋ฅผ ๊ฐ€๋ฅดํ‚จ๋‹ค. ์ด๋Ÿฌํ•œ DNA๋ฅผ ๋ฆฌํ„ดํ•˜๋Š” S๊ฐ€ ์žˆ๊ณ , ๋ฐฐ์—ด์˜ ๊ธธ์ด๊ฐ€ ๊ฐ™์€ P์™€ Q๊ฐ€ ์žˆ๋‹ค. ``` S=CAGCCTA P=[2, 5, 0] Q=[4, 5, 6] ๊ฐ 0๋ฒˆ์งธ ์š”์†Œ๋Š” 2, 4๋‹ค. 2๋ฒˆ์งธ ~ 4๋ฒˆ์งธ DNA๋Š” GCC...

    2๋ถ„
  • Codility - Min Avg Two Slice

    ## Min Avg Two Slice ### ๋ฌธ์ œ ๊ธธ์ด๊ฐ€ N์ธ ๋น„์–ด์žˆ์ง€ ์•Š์€ ๋ฐฐ์—ด A๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ํ•œ์Œ์˜ ์ˆซ์ž P, Q์˜ ๋ฒ”์œ„๋Š” `0 <= P < Q < N` ๋‹ค. ์ฃผ์–ด์ง„ P์™€ Q๋กœ A๋ฐฐ์—ด์„ sliceํ•œ๋‹ค. (์ตœ์†Œ 2๊ฐœ์ด์ƒ์˜ ์š”์†Œ๊ฐ€ ์žˆ์–ด์•ผ ํ•œ๋‹ค.) (P, Q)๋Š” `A[P] + A[P + 1] + ... + A[Q]`์ด๋ฉฐ, (P, Q)์˜ ํ‰๊ท ์€ `(A[P...

    2๋ถ„
  • Codility - Passing Cars

    ## Passing Cars ### ๋ฌธ์ œ N์˜ ๊ธธ์ด๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฐฐ์—ด A๋Š” 0๊ณผ 1๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋Š”๋ฐ, 0๊ณผ 1์€ ๊ฐ๊ฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. - 0์€ ์ฐจ๊ฐ€ ๋™์ชฝ์œผ๋กœ ๊ฐ„๋‹ค - 1์€ ์ฐจ๊ฐ€ ์„œ์ชฝ์œผ๋กœ ๊ฐ„๋‹ค ์ด ๋•Œ ๋™์ชฝ์œผ๋กœ ๊ฐ„ ์ฐจ์™€ ์„œ์ชฝ์œผ๋กœ ๊ฐ„ ์ฐจ๋ฅผ ์ง์ง€์„ ์ˆ˜ ์žˆ๋Š” ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋ผ. ๋‹จ ๋จผ์ € ๋™์ชฝ์œผ๋กœ ๊ฐ„์ฐจ์™€ ๊ทธ ์ดํ›„์— ์„œ์ชฝ์œผ๋กœ ๊ฐ„ ์ฐจ๋งŒ ์ง ์ง€์„ ์ˆ˜ ...

    2๋ถ„
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ - ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ

    ## ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ, Linked List ๋Š” ๊ฐ ๋…ธ๋“œ๋“ค์ด ํ•œ ์ค„๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ฐ ๋…ธ๋“œ๋Š” ๋ฐ์ดํ„ฐ์™€ ํฌ์ธํ„ฐ (๋‹ค์Œ ๋…ธ๋“œ์˜ ์ •๋ณด)๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ๋Š” ์ผ๋ฐ˜์ ์ธ ๋ฐฐ์—ด๊ณผ ๋‹ค๋ฅด๊ฒŒ ์‚ฝ์ž…๊ณผ ์‚ญ์ œ๊ฐ€ `O(1)`์— ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ํŠน์ • n๋ฒˆ ์งธ ์ •๋ณด๋ฅผ ์ฐพ๋Š” ๋ฐ์—๋Š” `O(n)`์‹œ๊ฐ„์ด ๊ฑธ๋ฆฐ๋‹ค๋Š” ๋‹จ์ ๋„ ์žˆ๋‹ค. ![๋‹จ์ผ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ...

    3๋ถ„
  • Nodejs์—์„œ์˜ ์•”/๋ณตํ˜ธํ™”

    ### Nodejs์—์„œ์˜ ์•”ํ˜ธํ™”์™€ ๋ณตํ˜ธํ™” ๋งŒ์•ฝ ๊ฐ™์€ ํ…์ŠคํŠธ๋กœ ์•”ํ˜ธํ™”๋ฅผ ๋™์ผํ•˜๊ฒŒ ์‹œ๋„ํ–ˆ์„ ๋•Œ, ์•”ํ˜ธํ™”๋œ ๊ฒฐ๊ณผ๊ฐ€ ๋™์ผํ•˜๊ฒŒ ๋‚˜์˜จ๋‹ค๋ฉด ์ด ์•”ํ˜ธํ™”๋Š” ๊ต‰์žฅํžˆ ์•ฝํ•œ ์•”ํ˜ธํ™”๋ผ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๊ฐ•๋ ฅํ•œ ์•”ํ˜ธํ™”๋Š” ๋งค๋ฒˆ ์•”ํ˜ธํ™”๋ฅผ ์‹œ๋„ํ•  ๋•Œ๋งˆ๋‹ค (์„ค๋ น ๊ฐ™์€ ํ…์ŠคํŠธ๋ผ ํ• ์ง€๋ผ๋„) ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์™€์•ผ ํ•œ๋‹ค. ๋ฌผ๋ก , ์–ด์จŒ๋“  ์•”ํ˜ธํ™” ๋˜์–ด ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค ๋งŒ์œผ๋กœ๋„ ๋งŒ์กฑํ•  ์ˆ˜๋„ ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ...

    3๋ถ„
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์Šคํ‚ฌ์„ ํ–ฅ์ƒ ์‹œํ‚ฌ 10๊ฐœ์˜ ์งˆ๋ฌธ

    ## ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์Šคํ‚ฌ์„ ํ–ฅ์ƒ ์‹œํ‚ฌ 10๊ฐœ์˜ ์งˆ๋ฌธ [10 JavaScript Quiz Questions and Answers to Sharpen Your Skills](https://typeofnan.dev/10-javascript-quiz-questions-and-answers/) ์˜ ์งˆ๋ฌธ์„ ๋ณด๊ณ , ๋‹ต์— ๋Œ€ํ•œ ํ•ด์„์„ ์ œ๋ฉ‹๋Œ€๋กœ ์จ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ### 1....

    6๋ถ„
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ œ๋„ค๋ ˆ์ดํ„ฐ

    ## Generator ์ œ๋„ค๋ ˆ์ดํ„ฐ์˜ ๊ฐœ๋…์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๊ธฐ ์ „์—, ๋จผ์ € ๋ฐ˜๋ณต์ž (Iterator)์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž. ### 0. Iterator ๋ฐ˜๋ณต์ž๋Š”, ๋‘๊ฐœ์˜ ์†์„ฑ (`value`์™€ `done`)์„ ๋ฐ˜ํ™˜ํ•˜๋Š” `next()`๋ฉ”์†Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ [Iterator protocal](https://developer.mozilla.org/en-US/docs/W...

    4๋ถ„
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ

    ## ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ ### 0. ์„ค๋ช…์ž ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ์— ๋Œ€ํ•ด ์‹œ์ž‘ํ•˜๊ธฐ ์ „์—, ์„ค๋ช…์ž(Descriptor)์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž. ์„ค๋ช…์ž๋ž€, ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ๊ฐ€ ์“ฐ๊ธฐ๊ฐ€ ๊ฐ€๋Šฅํ•œ์ง€, ๊ทธ๋ฆฌ๊ณ  ์—ด๊ฑฐ๊ฐ€ ๊ฐ€๋Šฅํ•œ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์„ค๋ช…์ž๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š”, [Object.getOwnPropertyDescriptor(obj, propName)](https://develo...

    4๋ถ„
  • var let const, ๊ทธ๋ฆฌ๊ณ  ํ˜ธ์ด์ŠคํŒ…

    ## var let const, ๊ทธ๋ฆฌ๊ณ  ํ˜ธ์ด์ŠคํŒ… ### var ์šฐ๋ฆฌ๊ฐ€ ๋ชจ๋‘ ์•„๋Š” `var` ํ‚ค์›Œ๋“œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ํŠน์ง•์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. 1. ํ•จ์ˆ˜๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋“ค์ด ๋ธ”๋ก ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€๋งŒ, `var`๋กœ ์„ ์–ธ๋œ ํ‚ค์›Œ๋“œ๋Š” ํ•จ์ˆ˜๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„๋ฅผ ๊ฐ–๋Š”๋‹ค. ```javascript var ...

    6๋ถ„
  • javascript ์ผ๋ฐ˜ ํ•จ์ˆ˜์™€ ํ™”์‚ดํ‘œ ํ•จ์ˆ˜์˜ ์ฐจ์ด

    ES6์—์„œ๋ถ€ํ„ฐ ์ƒ๊ธด `arrow function`์€ ์ผ๋ฐ˜์ ์œผ๋กœ `()=>{}`์˜ ๋ชจ์–‘์„ ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ๋™์ž‘๋„ ๋น„์Šทํ•ด๋ณด์ธ๋‹ค. ํ•˜์ง€๋งŒ ์ด ๋‘ ์„ ์–ธ๋ฐฉ์‹์€ ๋‘๊ฐ€์ง€ ๋ถ„๋ช…ํ•œ ์ฐจ์ด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ์ „์— this๋ฅผ ์•Œ์•„์•ผ ํ•œ๋‹ค.

    3๋ถ„
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ private

    ์ด ๊ธ€์€ [์€๋‹‰์„ ํ–ฅํ•œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์—ฌ์ •](https://meetup.toast.com/posts/228)์„ ์š”์•ฝํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. ## History ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ๋Š” ๊ฐ์ฒด์— private ํ•œ ์†์„ฑ์„ ๋งŒ๋“ค ์ˆ˜๊ฐ€ ์—†์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ณดํ†ต ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐœ๋ฐœ์ž๋Š” privateํ•œ ๊ฒƒ์ด๋‹ค ๋ผ๋Š” ์•ฝ์†์œผ๋กœ `_` prefix๋ฅผ ๋ถ™์—ฌ์„œ ์‚ฌ์šฉํ•˜๊ณ ๋Š” ํ–ˆ์—ˆ๋‹ค. ```javas...

    4๋ถ„