语言学习应用程序Duolingo有很多功能要做,但是有一个主要问题使我发疯。它告诉我我已经连续几天使用该应用程序,并显示一条消息,例如“ 您正在连续7天出现连败!”。撇开连字符和是否应拼写数字,这对大多数数字都适用,但是当您说自己连续8天出现错误时,这无疑是错误的!我没有用它来学习英语,但这对于语言应用程序来说仍然是不幸的行为。
您将通过编写一个完整的程序或函数来帮助Duolingo团队,该程序或函数可以确定给定数字前应带有a还是a。一个数字前面有一个,如果它的英语口语发音与开始辅音或半元音的声音,并且在前面的,如果它的发音以元音开头。因此,唯一以a开头的数字是那些以八,十一,十八或八十开头的发音。
大概Duolingo开发团队留了这个bug的原因是因为他们用光了空间,无法在应用程序中使用更多的源代码,因此您需要使此代码尽可能短,以希望他们可以将其压缩。
您的代码必须采用0到2,147,483,647之间的整数,并输出a
或an
。尾随换行符是可选的。出于此挑战的目的,1863年被理解为1836.3,而不是163。
测试用例:
0 → a
8 → an
11 → an
18 → an
84 → an
110 → a
843 → an
1111 → a
1863 → a
8192 → an
11000 → an
18000 → an
110000 → a
180000 → a
1141592 → a
1897932 → a
11234567 → an
18675309 → an