작성
·
219
0
처음에 answer을 배열로 만들게 되서 중복제거와 join 을 시키게 되면서 코드의 양이 좀 많아진거 같습니다.
function sol(arr) {
let answer = arr.split('');
let s = arr[0];
let ctn = 1;
for (let i = 1; i < arr.length; i++) {
if (arr[i] === s) {
s = arr[i];
ctn++;
} else {
s = arr[i];
if (ctn > 1) {
answer.splice(i, 0, ctn);
ctn = 1;
}
}
}
answer = new Set([...answer]);
answer = [...answer].join('');
return answer;
}
console.log(sol('KKHSSSSSSSE'));
답변 2
0
Set 자료형은 중복을 제거 하기 때문에 중복 문자열 길이가 같으면 그것도 중복 제거 해버립니다.
console.log(sol('KKHTTSSSSSEE'));
결과 : K2HTS5E
K2가 T2가 나와야 하는데 2가 중복 되어 사라지는걸 알 수 있습니다.
0
안녕하세요^^
마지막 문자를 처리하지 못하는 것 같습니다. 아래와 같이 입력하면 결과가 제대로 나오지 않습니다.
console.log(sol('KHHHSSEEEEE'));