๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (100)

๐Ÿ–ฅ dev-ruby

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] [3์ฐจ]์••์ถ• - javascript <2018 KAKAO BLIND RECRUITMENT>

๋ฌธ์ œ์„ค๋ช… ์‹ ์ž…์‚ฌ์› ์–ดํ”ผ์น˜๋Š” ์นด์นด์˜คํ†ก์œผ๋กœ ์ „์†ก๋˜๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์••์ถ•ํ•˜์—ฌ ์ „์†ก ํšจ์œจ์„ ๋†’์ด๋Š” ์—…๋ฌด๋ฅผ ๋งก๊ฒŒ ๋˜์—ˆ๋‹ค. ๋ฉ”์‹œ์ง€๋ฅผ ์••์ถ•ํ•˜๋”๋ผ๋„ ์ „๋‹ฌ๋˜๋Š” ์ •๋ณด๊ฐ€ ๋ฐ”๋€Œ์–ด์„œ๋Š” ์•ˆ ๋˜๋ฏ€๋กœ, ์••์ถ• ์ „์˜ ์ •๋ณด๋ฅผ ์™„๋ฒฝํ•˜๊ฒŒ ๋ณต์› ๊ฐ€๋Šฅํ•œ ๋ฌด์†์‹ค ์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌํ˜„ํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค. ์–ดํ”ผ์น˜๋Š” ์—ฌ๋Ÿฌ ์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ค‘์—์„œ ์„ฑ๋Šฅ์ด ์ข‹๊ณ  ๊ตฌํ˜„์ด ๊ฐ„๋‹จํ•œ LZW(Lempel–Ziv–Welch) ์••์ถ•์„ ๊ตฌํ˜„ํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค. LZW ์••์ถ•์€ 1983๋…„ ๋ฐœํ‘œ๋œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ, ์ด๋ฏธ์ง€ ํŒŒ์ผ ํฌ๋งท์ธ GIF ๋“ฑ ๋‹ค์–‘ํ•œ ์‘์šฉ์—์„œ ์‚ฌ์šฉ๋˜์—ˆ๋‹ค. LZW ์••์ถ•์€ ๋‹ค์Œ ๊ณผ์ •์„ ๊ฑฐ์นœ๋‹ค. ๊ธธ์ด๊ฐ€ 1์ธ ๋ชจ๋“  ๋‹จ์–ด๋ฅผ ํฌํ•จํ•˜๋„๋ก ์‚ฌ์ „์„ ์ดˆ๊ธฐํ™”ํ•œ๋‹ค. ์‚ฌ์ „์—์„œ ํ˜„์žฌ ์ž…๋ ฅ๊ณผ ์ผ์น˜ํ•˜๋Š” ๊ฐ€์žฅ ๊ธด ๋ฌธ์ž์—ด w๋ฅผ ์ฐพ๋Š”๋‹ค. w์— ํ•ด๋‹นํ•˜๋Š” ์‚ฌ์ „์˜ ์ƒ‰์ธ ๋ฒˆํ˜ธ๋ฅผ ์ถœ๋ ฅํ•˜๊ณ , ์ž…๋ ฅ์—์„œ w๋ฅผ ์ œ๊ฑฐํ•œ๋‹ค. ์ž…๋ ฅ์—์„œ ..

[React] ๋ฆฌ์•กํŠธ ์‹œ์ž‘ํ•˜๊ธฐ - ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ค์ • | ์ƒˆ๋กœ์šด app ๋งŒ๋“ค๊ธฐ

create-react-app์œผ๋กœ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ Node.js ์„ค์น˜ ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Node.js๊ฐ€ ๋จผ์ € ์„ค์น˜๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๋‹ค์šด๋งํฌ https://nodejs.org/ko/download/ ์„ค์น˜ ํ›„, ํ„ฐ๋ฏธ๋„์—์„œ node -v or npm -v ๋ช…๋ น์–ด๋กœ ๋ฒ„์ „์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. create-react-app์œผ๋กœ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ ํ•„์š”ํ•œ ์„ค์ • ๊ณผ์ •์„ ์ƒ๋žตํ•˜๊ณ  ๋ฐ”๋กœ ํ”„๋กœ์ ํŠธ ์ž‘์—… ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•ด ์ฃผ๋Š” ๋„๊ตฌ npx npx๋Š” npm์˜ 5.2.0 ๋ฒ„์ ผ๋ถ€ํ„ฐ ์ƒˆ๋กœ ์ถ”๊ฐ€๋œ ๋„๊ตฌ์ด๋‹ค. npx๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์•˜์„ ๊ฒฝ์šฐ์—๋Š” npm์„ ํ†ตํ•ด react app ์„ ์ƒ์„ฑํ–ˆ์ง€๋งŒ, > npm install -g create-react-app -g ๋ฅผ ํ†ตํ•ด ์ „์—ญ์ ์œผ๋กœ create-react-app ๊ฐ€ ์„ค์น˜ํ•จ์œผ๋กœ์„œ ์—ฌ๋Ÿฌ ..

React 2021. 11. 20. 23:30
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์˜คํ”ˆ์ฑ„ํŒ…๋ฐฉ - javascript <2019 KAKAO BLIND RECRUITMENT>

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

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋‹ค์Œ ํฐ ์ˆซ์ž -Javascript <์—ฐ์Šต๋ฌธ์ œ>

๋ฌธ์ œ ์„ค๋ช… ์ž์—ฐ์ˆ˜ n์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, n์˜ ๋‹ค์Œ ํฐ ์ˆซ์ž๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜ ํ•ฉ๋‹ˆ๋‹ค. ์กฐ๊ฑด 1. n์˜ ๋‹ค์Œ ํฐ ์ˆซ์ž๋Š” n๋ณด๋‹ค ํฐ ์ž์—ฐ์ˆ˜ ์ž…๋‹ˆ๋‹ค. ์กฐ๊ฑด 2. n์˜ ๋‹ค์Œ ํฐ ์ˆซ์ž์™€ n์€ 2์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ–ˆ์„ ๋•Œ 1์˜ ๊ฐฏ์ˆ˜๊ฐ€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์กฐ๊ฑด 3. n์˜ ๋‹ค์Œ ํฐ ์ˆซ์ž๋Š” ์กฐ๊ฑด 1, 2๋ฅผ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜ ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด์„œ 78(1001110)์˜ ๋‹ค์Œ ํฐ ์ˆซ์ž๋Š” 83(1010011)์ž…๋‹ˆ๋‹ค. ์ž์—ฐ์ˆ˜ n์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, n์˜ ๋‹ค์Œ ํฐ ์ˆซ์ž๋ฅผ return ํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ n์€ 1,000,000 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜ ์ž…๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ n result 78 83 15 23 ์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช… ์ž…์ถœ๋ ฅ ์˜ˆ#1 ๋ฌธ์ œ ์˜ˆ์‹œ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ#2 15(1111)์˜ ๋‹ค์Œ ํฐ ์ˆซ์ž..