이상한 암호코드

면접 대비

시간 제한1초메모리 제한1024 MB

요약
문자열을 대소문자를 무시한 같은 글자 연속 묶음으로 나눈 뒤, 길이가 K 이상이면 1, 미만이면 0으로 바꾸고 이미 나온 글자의 묶음은 삭제한다.
난이도

쉬움10점 중 3점

유형
문자열, 구현, 시뮬레이션, 해시맵
정답자
아직 제출이 없습니다

문제

가톨릭대학교에 사는 고양이 황톨릭은 이웃집 고양이 엄컴공을 좋아한다. 엄컴공은 알파벳으로만 이루어진 문자열을 이상한 암호로 바꾸는 일을 한다. 이상한 암호로 바꾸려면 다음 과정을 따라야 한다.

먼저 입력받은 문자열을 대소문자 구분 없이 왼쪽에서부터 연속해서 나타나는 같은 알파벳끼리 묶어 구간으로 나눈다. 그런 다음 왼쪽에서부터 차례로 각 구간에 아래 규칙을 적용한다.

  1. 한 구간의 길이가 K 이상이면 그 구간을 하나의 정수 1로 치환한다.
  2. 한 구간의 길이가 K 미만이면 그 구간을 하나의 정수 0으로 치환한다.
  3. 한 구간의 알파벳이 이전에 0이나 1로 치환된 적이 있다면 그 구간은 삭제한다.

엄컴공의 마음을 얻고 싶은 황톨릭은 주어진 문자열을 이상한 암호로 바꿔 주는 코드를 짜려고 한다. 황톨릭이 마음을 얻을 수 있게 도와주자!

입력

문자열 S와 양의 정수 K가 주어진다. (1 ≤ K ≤ 문자열 S의 길이 ≤ 2,000)

출력

고양이 언어 규칙을 이용해 바뀐 문자열을 출력한다

예제3

  1. 예제 1

    입력
    AAAABBBC 3
    
    예상 출력
    110
    
  2. 예제 2

    입력
    aaabaaaaa 3
    
    예상 출력
    10
    
  3. 예제 3

    입력
    QQqqqqwwwffFAACCvvVaaaAhhHMOSS 8
    
    예상 출력
    0000000000