๐ค ์์งlog ๐ค
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ฌด์์๋ก K๊ฐ์ ์ ๋ฝ๊ธฐ ๋ณธ๋ฌธ
๐ ํ๋ก๊ทธ๋๋จธ์ค
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ฌด์์๋ก K๊ฐ์ ์ ๋ฝ๊ธฐ
Eun_zii 2024. 4. 2. 17:32ํ๋ก๊ทธ๋๋จธ์ค Lv.0
- ๋ฌด์์๋ก K๊ฐ์ ์ ๋ฝ๊ธฐ
๐ ๋ฌธ์ ์ค๋ช
๐ ์ ํ์กฐ๊ฑด
- 1 ≤ arr์ ๊ธธ์ด ≤ 100,000
- 0 ≤ arr์ ์์ ≤ 100,000
- 1 ≤ k ≤ 1,000
๐ ํ์ด
function solution(arr, k) {
const set = new Set(arr)
let newArr = [...set].slice(0, k);
if ( newArr.length < k ) {
const fillArr = Array(k - newArr.length).fill(-1);
newArr = newArr.concat(fillArr);
}
return newArr
}
โ
์ฐ์ set( )ํจ์๋ก ์ค๋ณต๋ ์ซ์๋ฅผ ์ ๊ฑฐํด์ค๋ค.
์ค๋ณต์ ์ ๊ฑฐํ ํ, slice( ) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฐ์ด์ ์ฒ์๋ถํฐ k๊ฐ์ ๊ฐ์ ๊ฐ์ง ์๋ก์ด ๋ฐฐ์ด newArr๋ฅผ ์์ฑํ๋ค.
์๋ฅผ๋ค์ด
[0, 1, 1, 2, 2, 3] ๋ผ๋ arr๊ฐ ์๊ณ k์ ๊ฐ์ด 3 ์ด๋ผ๋ฉด ์์์๋ถํฐ ์๋ก ๋ค๋ฅธ k๊ฐ์ ์๋ฅผ ๊ณจ๋ผ๋ด๋ฉด [0, 1, 2]๊ฐ ๋๋ค.
newArr์ ๊ธธ์ด๊ฐ k๋ณด๋ค ์๋ค๋ฉด, ๋จ์ ๋ถ๋ถ์ -1๋ก ์ฑ์์ค์ผ ํ๊ธฐ๋๋ฌธ์
์ด๋ฅผ ์ํด ๋จผ์ Array(k - newArr.length).fill(-1)์ ์ฌ์ฉํ์ฌ -1๋ก ์ฑ์์ง ๋ฐฐ์ด์ ์์ฑํด์ฃผ๊ณ , concat( ) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฅผ ๊ธฐ์กด์ newArr ๋ฐฐ์ด์ ์ฐ๊ฒฐํํ, ์์ฑ๋ newArr๋ฅผ return ํด์ค๋ค.
728x90
'๐ ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ฐฐ์ด ๋ง๋ค๊ธฐ 2 (0) | 2024.04.05 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ฌธ์์ด ๊ฒน์ณ์ฐ๊ธฐ (0) | 2024.04.02 |
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ฌธ์์ด ์ฌ๋ฌ ๋ฒ ๋ค์ง๊ธฐ (1) | 2024.04.01 |
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ ์์ ํฉ (1) | 2024.04.01 |
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ฐฐ์ด ๋ง๋ค๊ธฐ 6 (0) | 2024.04.01 |