๋ฌธ์ ๋งํฌ
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ํฐ ์ ๋ง๋ค๊ธฐ
programmers.co.kr
์ ๊ทผ ๋ฐฉ๋ฒ
number์ ์ฒซ ์์๋ถํฐ ํ์ํ๋ฉฐ ๊ฒฐ๊ณผ๋ฅผ ๋ด์ resultArr์ ์ผ๋จ pushํ๋ค.
๊ทธ๋ฆฌ๊ณ ์๋ ์กฐ๊ฑด๋๋ก ์งํํ๋ค.
์กฐ๊ฑด 1. ๋ ํฐ์(resultArr[resultArr.length-1] < number[i])๊ฐ ๋์ฌ์ ๋ ํฐ์๋ก ๋ฐ๊พผ๋ค.
์กฐ๊ฑด 2. ์ ๊ฑฐํ ์ ์๋ ์๊ฐ ๋์ด์ ์์ผ๋ฉด(deleteCnt === k) ๋๋จธ์ง ์๋ ๊ทธ๋๋ก ๋ฃ๋๋ค.
์กฐ๊ฑด 2-1. ๋๋จธ์ง ์๋ฅผ ๋ฃ์๋ ๋ฃ์ ์ ์๋ ๊ฐ์(number.length - k)์ด์ ๋ค์ด๊ฐ ์ ์๋ค.
function solution(number, k) {
var answer = '';
const resultArr = [];
let deleteCnt = 0;
for(let i = 0; i < number.length; i++){
while(deleteCnt < k && resultArr[resultArr.length-1] < number[i]){
resultArr.pop();
deleteCnt++;
}
if(resultArr.length < number.length - k) resultArr.push(number[i])
}
answer = resultArr.join("");
return answer;
}
'์ฝ๋ฉํ ์คํธ > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Javascript] ์คํฌํธ๋ฆฌ (49993) (0) | 2022.06.18 |
---|---|
[Javascript] ์ซ์ ๋ธ๋ก (12923) (0) | 2022.06.15 |
[Javascript] ๊ตฌ๋ช ๋ณดํธ (42885) (0) | 2022.06.11 |
[Javascript] ์์ ์ฐพ๊ธฐ (42839) (0) | 2022.06.11 |
[Javascript] ํ๊ฒ ๋๋ฒ (43165) (0) | 2022.06.11 |