Baru-baru ini saya posting sebuah pertanyaan tentang game Diffy yang telah terjawab. Baiklah, pertanyaannya sangat sulit, tetapi saya ingin membuat pertanyaan yang lebih mudah tentang permainan Diffy sehingga kita bisa mendapatkan bola yang menggelinding.
Bagaimana Diffy bekerja
Disalin dari Find Diffy Games
Gim Diffy bekerja seperti berikut: Anda mulai dengan daftar bilangan bulat non-negatif, dalam contoh ini kita akan gunakan
3 4 5 8
Kemudian Anda mengambil perbedaan absolut antara angka-angka yang berdekatan
(8) 3 4 5 8
5 1 1 3
Lalu kamu ulangi. Anda ulangi sampai Anda menyadari bahwa Anda telah memasukkan satu lingkaran. Dan kemudian umumnya permainan dimulai dari awal lagi.
3 4 5 8
5 1 1 3
2 4 0 2
0 2 4 2
2 2 2 2
0 0 0 0
0 0 0 0
Kebanyakan gim berakhir dengan serangkaian nol semua, yang dianggap sebagai keadaan kalah, tetapi beberapa gim jarang terjebak dalam loop yang lebih besar.
Tugas
Mengingat keadaan awal permainan Diffy menentukan apakah permainan akhirnya mencapai keadaan nol semua. Anda harus menampilkan nilai Truthy atau Falsy untuk masing-masing dua negara. Yang sesuai dengan yang tidak masalah.
Tujuannya adalah untuk meminimalkan jumlah byte di sumber Anda.
1 1 0
periodik, begitu 42 42 41
juga keadaannya.
n
aneh, permainan tidak pergi ke nol kecuali semua angkanya sama. Jika panjangnya adalah kekuatan 2, selalu menjadi nol.
n
elemen dan maksimum m
mengambil paling banyak n * bit_length(m)
langkah. Jadi, n*m
juga merupakan batas atas. Batas atas yang lebih kuat adalah t(n) * bit_length(m)
, di mana t(n)
kekuatan terbesar 2 adalah faktor n
.