我很想拿一个数字,用英语说的时候知道其中有多少个音节。
让我们将其限制为小于一千的正整数。
我是英国人,所以当后面有任何非零数字时,我们将在百列后面加上“和”。
挑战
- 编写一些代码,该代码将接受小于1000的正整数,并在代表英式英语的数字的单词中输出音节的数量。
- 它不需要生成代表数字的单词,只需生成它们包含的音节的数量即可。
- 这是代码高尔夫,尝试以最少的字节数实现。
- 使用您喜欢的任何语言。
- 禁止使用标准漏洞。
测试用例
| N | In words | Syllables |
| 1 | one | 1 |
| 2 | two | 1 |
| 3 | three | 1 |
| 4 | four | 1 |
| 5 | five | 1 |
| 6 | six | 1 |
| 7 | sev-en | 2 |
| 8 | eight | 1 |
| 9 | nine | 1 |
| 10 | ten | 1 |
| 11 | el-ev-en | 3 |
| 12 | twelve | 1 |
| 13 | thir-teen | 2 |
| 14 | four-teen | 2 |
| 17 | se-ven-teen | 3 |
| 20 | twen-ty | 2 |
| 21 | twen-ty one | 3 |
| 42 | four-ty two | 3 |
| 73 | sev-en-ty three | 4 |
| 77 | sev-en-ty sev-en | 5 |
| 100 | one hund-red | 3 |
| 110 | one hund-red and ten | 5 |
| 111 | one hund-red and el-ev-en | 7 |
| 555 | five hund-red and fif-ty five | 7 |
| 700 | sev-en hund-red | 4 |
| 770 | sev-en hund-red and sev-en-ty | 8 |
| 777 | sev-en hund-red and sev-en-ty sev-en | 10 |
| 999 | nine hund-red and nine-ty nine | 7 |