Tantangan Nomor Snaking
Saya bertanya-tanya berapa banyak angka yang ada antara 1 dan 50.000?
Snaking Numbers, dalam game ini, adalah angka yang dapat diketik pada papan angka tradisional (format di bawah) dengan menggerakkan satu tombol ke atas, bawah, kiri, atau kanan.
7 8 9
4 5 6
1 2 3
0
Misalnya, jika Anda mulai dengan angka 5, Anda dapat memilih 4, 6, 8, atau 2 sebagai langkah valid berikutnya - namun 7, 3, 9, dan 1 terlarang karena diposisikan secara diagonal ke kunci saat ini . Jadi, jika Anda memiliki 5, maka 2, pilihan kunci Anda berikutnya yang layak adalah 0, 1, 3, atau 5 lagi.
Dalam latihan Code Golf ini, Anda harus menampilkan daftar semua bilangan ular positif antara 1 dan 50k, bersama dengan penghitungan akhir dari semua angka yang memenuhi kriteria.
Aturan
- Angka tidak bisa dimulai dengan Nol.
- Bilangan harus berupa bilangan bulat positif.
- Setiap angka berurutan, baca dari kiri ke kanan, harus "ular" di sekitar panel angka.
- Ular tidak dapat berjalan secara diagonal melintasi kunci
- Angka 0 dapat diakses dari angka 1 dan 2
- Angka tidak dapat dipasangkan (mis .: 22)
Contoh Nomor Ular yang valid:
12369
45201
1254
10102
1
12
987
Contoh angka yang tidak valid
1238 - 8 is not connected
0001 - multiple leading 0s
0101 - leading 0
159 - snake cannot travel diagonally
4556 - duplicate 5
Seperti Golf Code normal, tujuannya adalah byte paling sedikit!
Menurut matematika dan aturan saya, Anda harus memiliki 670 angka snaking yang valid dalam daftar Anda, ditambah 670 itu sendiri dicetak sebagai angka terakhir.
