class Solution:

    def compress(self, chars: List[str]) -> int:

        cnt, nchars = 1, []

        for i in range(len(chars)):

            if nchars == [] or chars[i] != chars[i-1]:

                if cnt > 1:

                    for s in str(cnt):

                        nchars.append(s)

                nchars.append(chars[i])

                cnt = 1

            else :

                cnt += 1

        if cnt > 1:

            for s in str(cnt):

                nchars.append(s)

        while chars: chars.pop()

        chars += nchars

        return len(chars)


너무 무난한 O(N) 문자열 처리.. 왜 Medium인지도 모르겠다