본문 바로가기
Beakjoon&프로그래머스/파이썬

[백준/파이썬] 5603번 問題2

by 현장 2022. 8. 8.

-Code

n = int(input())
num = input()

for _ in range(n):
    N = ""
    cnt = 1
    word = num[0]
    for i in num[1:]:
        if i != word:
            N += str(cnt) + word
            cnt = 1
            word = i
        else:
            cnt += 1
    if cnt != 0:
        N += str(cnt) + word
    num = N
print(num)

처음에 set을 이용하여 풀려고 했으나 정렬 문제와 중복된 수가 붙어있지 않는 경우 문제가 생겨서 다른 방법을 사용했습니다. 그리고 cnt가 0일 경우 문제가 생겨서 if문으로 해결을 해주었습니다.