아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

저글링 공연단

시간 제한3초메모리 제한512 MB

요약
각 위치가 공을 하나 이하로 가질 때까지 좌우 이웃에게 공을 동시에 던지는 과정을 거친 뒤 최종 상태를 출력한다.
난이도

어려움10점 중 8점

유형
시뮬레이션, 그리디, 구현, 수학
정답자
아직 제출이 없습니다

문제

컴퓨팅과 고급 서커스 기술을 함께 가르치는 국립 센터에서는 학생의 기술 시연을 적극 권장한다.

초보 공연자 nn명이 한 줄로 서서 저글링 공연을 하고 있다. 안타깝게도 모두 실력에 자신이 없어서 공연이 힘겹다. 그래서 기회가 생기는 즉시 자기 몫을 줄여 공연을 쉽게 만들려고 한다.

공을 두 개 이상 든 저글러는 양옆의 이웃에게 공을 하나씩 던진다. 어느 한쪽에 이웃이 없으면 그 방향으로는 공을 무대 밖으로 던진다. 모든 저글러가 동시에 공을 던진다. 공을 두 개 이상 든 저글러가 한 명도 없으면 공연이 끝난다.

아래 그림은 이 과정을 나타낸다.

그림 1: 첫 번째 예제의 진행 과정. 저글러 n=8n = 8명의 공연이다.

관객인 당신은 이 공연이 별로 인상적이지 않다. 하지만 공연이 끝났을 때 각 저글러에게 공이 몇 개 남는지는 궁금하다.

입력

첫째 줄에 문자 0, 1, 2로만 이루어진 길이 nn의 문자열 ss가 주어진다 (1≤n≤1061 \le n \le 10^6). ss의 ii번째 문자는 ii번째 사람이 처음에 든 저글링 공의 개수이다.

출력

문자 0과 1로 이루어진 길이 nn의 문자열을 출력한다. ii번째 문자는 공연이 끝났을 때 ii번째 사람이 든 저글링 공의 개수이다.

예제6

  1. 예제 1

    입력
    12100212
    
    예상 출력
    10111111
    
  2. 예제 2

    입력
    000111222000222111222001
    
    예상 출력
    111111101111111111111111
    
  3. 예제 3

    입력
    2
    
    예상 출력
    0
    
  4. 예제 4

    입력
    1010
    
    예상 출력
    1010
    
  5. 예제 5

    입력
    222
    
    예상 출력
    101
    
  6. 예제 6

    입력
    2222
    
    예상 출력
    1111