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

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

숨어 있는 로마 숫자

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

요약
I, V, X로 이루어진 문자열이 주어질 때 1부터 12까지의 로마 숫자 중 부분 문자열로 나타나는 것을 모두 찾는다.
난이도

쉬움10점 중 2점

유형
문자열, 구현, 완전 탐색
정답자
아직 제출이 없습니다

문제

브로니우스(Bronius)는 1부터 12까지의 로마 숫자를 익히고 있습니다. 이 숫자들은 세 개의 기호 I, V, X만으로 다음과 같이 나타낼 수 있습니다.

123456789101112
IIIIIIIVVVIVIIVIIIIXXXIXII

연습을 위해 브로니우스는 칠판에 기호 I, V, X로 이루어진 길이 NN의 임의의 문자열 s1s2…sNs_1 s_2 \dots s_N을 적었습니다. 그는 이 문자열 안에 '숨어 있는' 1부터 12까지의 로마 숫자를 찾으려고 합니다. 어떤 수의 로마 표기가 문자열의 연속한 부분 문자열로 나타나면, 그 수가 문자열 안에 숨어 있다고 합니다. 예를 들어 문자열 XIIIX에는 숫자 1, 2, 3, 9, 10, 11, 12가 숨어 있습니다.

브로니우스가 적은 문자열 안에 숨어 있는 1부터 12까지의 모든 수를 찾으세요.

입력

첫째 줄에 문자열의 길이인 양의 정수 NN이 주어집니다.

둘째 줄에 공백 없이 NN개의 기호 sis_i가 주어집니다. 각 기호는 I, V, X 중 하나입니다.

출력

문자열 안에 숨어 있는 모든 수를 오름차순으로, 공백으로 구분하여 한 줄에 출력하세요.

제한

  • 1≤N≤1001 \le N \le 100
  • si∈{I,V,X}s_i \in \{\text{I}, \text{V}, \text{X}\}

예제5

  1. 예제 1

    입력
    5
    XIIIX
    
    예상 출력
    1 2 3 9 10 11 12
    
  2. 예제 2

    입력
    1
    I
    
    예상 출력
    1
    
  3. 예제 3

    입력
    1
    V
    
    예상 출력
    5
    
  4. 예제 4

    입력
    1
    X
    
    예상 출력
    10
    
  5. 예제 5

    입력
    4
    VIII
    
    예상 출력
    1 2 3 5 6 7 8