만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

전화번호 읽기 (라지)

면접 대비

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

요약
하이픈 형식으로 나눈 구간마다 같은 숫자가 이어지면 double, triple 같은 횟수 단어와 함께 소리 내어 읽습니다.
난이도

쉬움10점 중 3점

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

문제

전화번호를 영어로 읽는 방법을 다룬다.

중국의 전화번호는 11자리이다. 예를 들어 15012233444를 3-4-4 형식으로 끊으면 150 1223 3444가 되고, 3-3-5 형식으로 끊으면 150 122 33444가 된다. 끊는 형식이 다르면 읽는 방식도 달라진다.

150 1223 3444는 one five zero one double two three three triple four로 읽는다.

150 122 33444는 one five zero one double two double three triple four로 읽는다.

전화번호와 끊는 형식이 주어질 때 올바르게 읽은 문장을 출력하라.

숫자 하나는 0부터 9까지 차례로 zero, one, two, three, four, five, six, seven, eight, nine으로 읽는다.

각 묶음 안에서 같은 숫자가 연속으로 나오는 구간을 찾아 다음 규칙을 적용한다. 연속 구간은 묶음 경계를 넘지 않는다.

  • 1개면 그 숫자만 읽는다.
  • 2개면 double을 쓴다.
  • 3개면 triple을 쓴다.
  • 4개면 quadruple을 쓴다.
  • 5개면 quintuple을 쓴다.
  • 6개면 sextuple을 쓴다.
  • 7개면 septuple을 쓴다.
  • 8개면 octuple을 쓴다.
  • 9개면 nonuple을 쓴다.
  • 10개면 decuple을 쓴다.
  • 10개를 넘으면 전부 하나씩 따로 읽는다.

개수를 나타내는 단어는 숫자 이름보다 앞에 쓴다. 22는 double two이다.

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다.

다음 TT개의 줄에 각각 전화번호 NN과 끊는 형식 FF가 공백 하나로 구분되어 주어진다. FF는 하이픈(-)으로 구분된 하나 이상의 양의 정수이며, 앞에 0이 붙지 않고 그 합은 항상 NN의 자릿수와 같다.

제한

  • 1≤T≤1001 \le T \le 100
  • 1≤∣N∣≤1001 \le |N| \le 100

출력

각 테스트 케이스마다 "Case #x: y" 형식으로 한 줄씩 출력한다. xx는 1부터 시작하는 테스트 케이스 번호이고, yy는 읽은 문장이다. 문장의 단어는 공백 하나로 구분한다.

예제5

  1. 예제 1

    입력
    3
    15012233444 3-4-4
    15012233444 3-3-5
    12223 2-3
    
    예상 출력
    Case #1: one five zero one double two three three triple four
    Case #2: one five zero one double two double three triple four
    Case #3: one two double two three
    
  2. 예제 2

    입력
    2
    7 1
    0 1
    
    예상 출력
    Case #1: seven
    Case #2: zero
    
  3. 예제 3

    입력
    3
    5555555555 10
    55555555555 11
    55555555555 10-1
    
    예상 출력
    Case #1: decuple five
    Case #2: five five five five five five five five five five five
    Case #3: decuple five five
    
  4. 예제 4

    입력
    1
    001112222333334444445555555666666667777777778888888888 2-3-4-5-6-7-8-9-10
    
    예상 출력
    Case #1: double zero triple one quadruple two quintuple three sextuple four septuple five octuple six nonuple seven decuple eight
    
  5. 예제 5

    입력
    4
    4444 2-2
    4444 1-3
    4444 3-1
    4444 1-1-1-1
    
    예상 출력
    Case #1: double four double four
    Case #2: four triple four
    Case #3: triple four four
    Case #4: four four four four