๐ค ์์งlog ๐ค
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ฐฐ์ด ๋ง๋ค๊ธฐ 3 ๋ณธ๋ฌธ
๐ ํ๋ก๊ทธ๋๋จธ์ค
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ฐฐ์ด ๋ง๋ค๊ธฐ 3
Eun_zii 2024. 3. 22. 16:33ํ๋ก๊ทธ๋๋จธ์ค Lv.0
- ๋ฐฐ์ด ๋ง๋ค๊ธฐ 3
๐ ๋ฌธ์ ์ค๋ช
- ์ ์ ๋ฐฐ์ด arr์ 2๊ฐ์ ๊ตฌ๊ฐ์ด ๋ด๊ธด ๋ฐฐ์ด intervals๊ฐ ์ฃผ์ด์ง๋๋ค. intervals๋ ํญ์ [[a1, b1], [a2, b2]]์ ๊ผด๋ก ์ฃผ์ด์ง๋ฉฐ ๊ฐ ๊ตฌ๊ฐ์ ๋ซํ ๊ตฌ๊ฐ์ ๋๋ค. ๋ซํ ๊ตฌ๊ฐ์ ์ ๋๊ฐ๊ณผ ๊ทธ ์ฌ์ด์ ๊ฐ์ ๋ชจ๋ ํฌํจํ๋ ๊ตฌ๊ฐ์ ์๋ฏธํฉ๋๋ค. ์ด๋ ๋ฐฐ์ด arr์ ์ฒซ ๋ฒ์งธ ๊ตฌ๊ฐ์ ํด๋นํ๋ ๋ฐฐ์ด๊ณผ ๋ ๋ฒ์งธ ๊ตฌ๊ฐ์ ํด๋นํ๋ ๋ฐฐ์ด์ ์๋ค๋ก ๋ถ์ฌ ์๋ก์ด ๋ฐฐ์ด์ ๋ง๋ค์ด return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
๐ ์ ํ์กฐ๊ฑด
- 1 ≤ arr์ ๊ธธ์ด ≤ 100,000
- 1 ≤ arr์ ์์ < 100
- 1 ≤ a1 ≤ b1 < arr์ ๊ธธ์ด
- 1 ≤ a2 ≤ b2 < arr์ ๊ธธ์ด
๐ ํ์ด
function solution(arr, intervals) {
let answer = [];
for (let i = 0; i < intervals.length; i++) {
const [a, b] = intervals[i];
const slice = arr.slice(a, b + 1);
answer = answer.concat(slice);
}
return answer;
}
โ
intervals ๊ฐ๊ฒฉ์ ๋ฐ๋ผ arr๋ฐฐ์ด์ ๊ตฌ๊ฐ์ ์ ์ฅํ ๋น ๋ฐฐ์ด answer์ ์ ์ธํด์ค๋ค.
for๋ฌธ์ผ๋ก ์ฌ์ฉํด์ intervals ๋ฐฐ์ด์ ๋ฐ๋ณตํด์ค๋ค. ๋ฐ๋ณตํ๋ ๋์ intervals ๋ฐฐ์ด์์ [ a, b ]๋ฅผ ๋ถํดํด์ฃผ๊ณ ,
arr ๋ฐฐ์ด์์ ์ธ๋ฑ์ค a ๋ถํฐ ์ธ๋ฑ์ค b( +1์ ์ฌ์ฉํด์ b ํฌํจ ํด์ค๋ค. ) ๊น์ง ์์๋ฅผ ์ถ์ถํ๋ค.
( slice() ๋ฉ์๋๋ ๋ฐฐ์ด ์ผ๋ถ์ ์์ ๋ณต์ฌ๋ณธ์ ์ ๋ฐฐ์ด ๊ฐ์ฒด๋ก ๋ฐํํฉ๋๋ค. )
concat( ) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ slice ๋ฐฐ์ด์ ๋น๋ฐฐ์ด answer ์ ์ฐ๊ฒฐํด์ค๋ค.
( concat() ๋ฉ์๋๋ ๋ ๊ฐ ์ด์์ ๋ฐฐ์ด์ ๋ณํฉํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. )
728x90
'๐ ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ์ด์ด ๋ถ์ธ ์ (0) | 2024.03.25 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ฌธ์์ด ์๋ผ์ ์ ๋ ฌํ๊ธฐ (0) | 2024.03.25 |
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๊ฐ๋จํ ์ ๊ณ์ฐํ๊ธฐ (0) | 2024.03.22 |
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ๋ถ๋ถ ๋ฌธ์์ด ์ด์ด ๋ถ์ฌ ๋ฌธ์์ด ๋ง๋ค๊ธฐ (1) | 2024.03.22 |
[ํ๋ก๊ทธ๋๋จธ์ค:Javascript] ํ์ vs ์ง์ (0) | 2024.03.21 |