algorithm

Codility - Max Product of Three

## Max Product of Three ### ๋ฌธ์ œ ๊ธธ์ด N์ธ ๋ฐฐ์—ด A๊ฐ€ ์ฃผ์–ด์กŒ์„๋•Œ, ์ž„์˜๋กœ ์„ธ๊ฐœ์˜ ์ˆซ์ž๋ฅผ ๊ณฑํ–ˆ์„ ๋•Œ ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด์˜ Index๋ฅผ ๋ฆฌํ„ดํ•ด๋ผ. ``` A[0] = -3 A[1] = 1 A[2] = 2 A[3] = -2 A[4] = 5 A[5] = 6 2, 4, 5๋ฒˆ์งธ๋ฅผ ๊ณฑํ•˜๋ฉด 60์„ ๋งŒ๋“ค์ˆ˜ ์žˆ๊ณ  ์ด๊ฒƒ์ด ๊ฐ€์žฅ ํฐ ...

Read

Codility - Distinct

## Distinct ### ๋ฌธ์ œ ๋ฐฐ์—ด A์•ˆ์— uniqueํ•œ ์ˆซ์ž๊ฐ€ ๋ช‡ ๊ฐœ ์žˆ๋Š”์ง€ ๋ฆฌํ„ดํ•˜๋ผ. ### ํ’€์ด ```javascript function solution(A) { return [...new Set(A)].length } ``` Set์„ ํ™œ์šฉํ•˜๋ฉด ์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋‹ค. Set์ด ์•„๋‹ˆ๋”๋ผ๋„ object๋“ฑ์„ ํ™œ์šฉํ•ด๋ณด๋ฉด ๋œ๋‹ค. https:...

Read

Codility - Passing Cars

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

Read

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...

Read

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...

Read