Published 2022. 7. 16. 12:20
/*
https://school.programmers.co.kr/learn/courses/30/lessons/12935
์ ์๋ฅผ ์ ์ฅํ ๋ฐฐ์ด, arr ์์ ๊ฐ์ฅ ์์ ์๋ฅผ ์ ๊ฑฐํ ๋ฐฐ์ด์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์. ๋จ, ๋ฆฌํดํ๋ ค๋ ๋ฐฐ์ด์ด ๋น ๋ฐฐ์ด์ธ ๊ฒฝ์ฐ์ ๋ฐฐ์ด์ -1์ ์ฑ์ ๋ฆฌํดํ์ธ์. ์๋ฅผ๋ค์ด arr์ด [4,3,2,1]์ธ ๊ฒฝ์ฐ๋ [4,3,2]๋ฅผ ๋ฆฌํด ํ๊ณ , [10]๋ฉด [-1]์ ๋ฆฌํด ํฉ๋๋ค.
์ ํ ์กฐ๊ฑด
arr์ ๊ธธ์ด 1 ์ด์์ธ ๋ฐฐ์ด์
๋๋ค.
์ธ๋ฑ์ค i, j์ ๋ํด i ≠ j์ด๋ฉด arr[i] ≠ arr[j] ์
๋๋ค.
*/
const solution = (arr) => {
// 1. ์คํ๋ ๋ ์ฐ์ฐ์๋ก ๋ฐฐ์ด์ ๋ฒ๊ฒจ๋ธ ๋ค
// 2. Math.min์ผ๋ก ์ต์๊ฐ์ ๊ตฌํ๊ณ
// 3. indexOf๋ก ํด๋น ์ต์๊ฐ์ ์ธ๋ฑ์ค ๊ฐ์ ๊ตฌํ ๋ค
// 4. splice ๋ฉ์๋๋ก ํด๋น ์ต์๊ฐ๋ถํฐ 1๋ฒ์งธ ์ธ๋ฑ์ค ๊ฐ๋ง ์๋ฆ
arr.splice(arr.indexOf(Math.min(...arr)), 1);
if (arr.length <= 1) arr.push(-1);
// 5. ๋ง์ฝ ๋ฐฐ์ด์ ๊ธธ์ด๊ฐ 1์ดํ๋ผ๋ฉด ๋ฐฐ์ด์ -1์ ํธ์ฌ
return arr;
};
console.log(solution([4, 3, 2, 1]));
console.log(solution([10]));
'๐ฅ CS > Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค - ํ์ค๋ ์ (0) | 2022.07.16 |
---|---|
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค - ์ฝ๋ผ์ธ ์ถ์ถ (0) | 2022.07.16 |
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค - ์๋ฐ์๋ฐ์๋ฐ์๋ฐ์๋ฐ์? (0) | 2022.07.15 |
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค - ๋๋์ด ๋จ์ด์ง๋ ์ซ์ ๋ฐฐ์ด (0) | 2022.07.15 |
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค - 2016๋ (0) | 2022.07.15 |