#3500. [GESP三级模拟]三位数的读法

[GESP三级模拟]三位数的读法

题目描述

小 W 在学习用中文拼音读数字,他想写一个程序,实现三位数与它的拼音读法之间的双向转换。

设三位数 nn100n999100\le n\le 999)的百位、十位、个位分别为 aabbcc。数字 090\sim 9 的拼音依次是 lingyiersansiwuliuqibajiu;位权词是 bai(百)和 shi(十)。一个三位数的拼音读法按下面的规则得到:

  • 百位:aa 一定不为 00,输出「aa 的拼音 + bai」。
  • 十位:若 b0b\neq 0,输出「bb 的拼音 + shi」;特别地,b=1b=1 时也读作 yi shi。若 b=0b=0c0c\neq 0,只输出一个 ling。若 b=0b=0c=0c=0,十位不输出。
  • 个位:若 c0c\neq 0,输出 cc 的拼音;若 c=0c=0,个位不输出。

相邻音节之间用一个空格分隔。

现在给定一行输入,它或者是一个三位数,或者是某个三位数的拼音读法。请你判断它的类型,并输出另一种表示。

输入格式

输入共一行。它可能是一个三位数(仅由数字字符组成、不含前导零),也可能是某个三位数的拼音读法(仅由小写字母和空格组成)。

输出格式

输出一行。如果输入是三位数,输出它的拼音读法;如果输入是拼音读法,输出对应的三位数。

样例 #1

123
yi bai er shi san

样例解释 #1

样例 1:输入是三位数 123123,转成拼音 yi bai er shi san

样例 #2

yi bai ling yi
101

样例解释 #2

样例 2:输入是拼音读法,转成数字 101101

样例 #3

110
yi bai yi shi

样例解释 #3

样例 3:110110 的十位是 11,读作 yi shi

样例 #4

yi bai
100

样例解释 #4

样例 4:拼音 yi bai 表示整百 100100,十位和个位都是 00,都不读。

样例 #5

999
jiu bai jiu shi jiu

样例解释 #5

样例 5:999999 是最大的三位数。

数据范围

对于所有数据:若输入是三位数,满足 100n999100\le n\le 999;若输入是拼音读法,它是某个 100n999100\le n\le 999 的三位数的正确读法。输入保证合法,且能唯一确定转换方向。