Diberikan integer non-negatif ( n
), buat fungsi yang mengembalikan n
dalam urutan abjad, sesuai dengan ejaan literal dari setiap digit n
.
Contoh:
Input: 101
>> one, zero, one
>> one, one, zero
Output: 110
Input: 31948
>> three, one, nine, four, eight
>> eight, four, nine, one, three
Output: 84913
Input: 5544
>> five, five, four, four
>> five, five, four, four
Output: 5544
Input: 1234567890
Output: 8549176320
Catatan: operasi dalam contoh hanya ilustratif dan tidak perlu dimasukkan dalam output. Hanya nomor yang diurutkan berdasarkan abjad yang perlu dikembalikan.
Ini adalah kode-golf, jadi kode terpendek dalam byte menang.
Sunting: input dapat diambil dalam format yang diinginkan yang paling sesuai dengan bahasa Anda, dan output dapat diproduksi dengan cara yang sama dengan kembali dari fungsi atau pencetakan. Masukan akan selalu berupa bilangan asli (termasuk 0) dan tidak akan berisi awalan 0.
Entri OEIS yang relevan (A057846) ditemukan oleh @DomHastings
00
....
849
, apakah itu berarti kita diizinkan untuk mencetak nomor 849
tetapi bukan string "849"
? IMO ini hanya format I / O yang rumit (buruk!) Selain tantangan yang sangat bagus.
001
dihasilkan? Jika mereka signifikan dan hasilnya tidak 1
, sebagian besar bahasa akan membutuhkan string sebagai input untuk fakta sederhana itu kasar, tidak praktis dan hampir tidak mungkin untuk meminta parser untuk melestarikan nol terkemuka di basis 10 angka literal.