Skip to content

Commit aa1d533

Browse files
committed
2020 카카오 리크루먼트 1번 문자열압축
1 parent 8240422 commit aa1d533

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
const abstract = (list, n) => {
2+
const len = list.length;
3+
4+
let result = "";
5+
let prev = list.slice(0, n),
6+
count = 1,
7+
i = n;
8+
for (i; i < len; i += n) {
9+
const cur = list.slice(i, i + n);
10+
if (cur === prev) {
11+
count++;
12+
} else {
13+
result += `${count > 1 ? count : ""}${prev}`;
14+
count = 1;
15+
prev = cur;
16+
}
17+
}
18+
19+
result += `${count > 1 ? count : ""}${prev}`;
20+
21+
return result.length;
22+
};
23+
24+
function solution(s) {
25+
const result = [];
26+
const slen = s.length;
27+
if (slen < 2) return slen;
28+
const len = Math.floor(slen / 2);
29+
for (let i = 0; i < len; i++) {
30+
result.push(abstract(s, i + 1));
31+
}
32+
33+
return Math.min(...result);
34+
}

0 commit comments

Comments
 (0)