전화번호 읽기 (라지)

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

쉬움3구현문자열면접 대비아직 제출이 없습니다시간 제한5초메모리 제한512 MB

문제

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

중국의 전화번호는 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의 자릿수와 같다.

제한

  • 1T1001 \le T \le 100
  • 1N1001 \le |N| \le 100

출력

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