Duolingo, l'app per l'apprendimento delle lingue, ha molte cose da fare, ma c'è un grosso problema che mi fa impazzire. Mi dice da quanti giorni consecutivi ho usato l'app con un messaggio come Sei in serie da 7 giorni! Mettere da parte la sillabazione e se il numero debba essere precisato, questo funziona bene per la maggior parte dei numeri, ma è indiscutibilmente sbagliato quando dice che sei in una sequenza di 8 giorni! Non lo sto usando per imparare l'inglese ma questo è ancora un comportamento sfortunato per un'app di lingua.
Aiuterai il team di Duolingo scrivendo un programma o una funzione completa che determina se un determinato numero deve essere preceduto da un o un . Un numero è preceduto da un se la sua pronuncia nell'inglese parlato inizia con un suono di consonante o semivowel e preceduto da un se la sua pronuncia inizia con un suono di vocale. Quindi gli unici numeri preceduti da un sono quelli la cui pronuncia inizia con otto , undici , diciotto o ottanta .
Presumibilmente il team di sviluppatori di Duolingo ha lasciato questo bug perché ha esaurito lo spazio per più codice sorgente nell'app, quindi è necessario rendere questo codice il più breve possibile nella speranza che possano comprimerlo.
Il codice deve richiedere un numero intero compreso tra 0 e 2.147.483.647 e output a
o an
. Una nuova riga finale è facoltativa. Ai fini di questa sfida, il 1863 viene letto come milleduecentosessantatre , non settecentosessantatre .
Casi test:
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