pengantar
Misalkan Anda memiliki penggaris dengan angka dari 0 hingga r-1 . Anda menempatkan semut di antara dua angka, dan ia mulai merangkak tak menentu pada penggaris. Penguasa sangat sempit sehingga semut tidak bisa berjalan dari satu posisi ke posisi lain tanpa berjalan di semua nomor di antaranya. Saat semut berjalan pada nomor untuk pertama kalinya, Anda merekamnya, dan ini memberi Anda permutasi dari angka r . Kami mengatakan bahwa permutasi adalah gelisah jika dapat dihasilkan oleh semut dengan cara ini. Atau, permutasi p gelisah jika setiap entri p [i] kecuali yang pertama berada dalam jarak 1 dari beberapa entri sebelumnya.
Contohnya
Panjang-6 permutasi
4, 3, 5, 2, 1, 0
gelisah, karena 3 berada dalam jarak 1 dari 4 , 5 berada dalam jarak 1 dari 4 , 2 berada dalam jarak 1 dari 3 , 1 berada dalam jarak 1 dari 2 , dan 0 berada dalam jarak 1 dari 1 . Permutasi
3, 2, 5, 4, 1, 0
tidak gelisah, karena 5 tidak berada dalam jarak 1 dari 3 atau 2 ; semut harus melewati 4 untuk sampai ke 5 .
Tugas
Diberi permutasi dari angka-angka dari 0 ke r-1 untuk sekitar 1 ≤ r ≤ 100 dalam format apa pun yang masuk akal, mengeluarkan nilai yang benar jika permutasi itu gelisah, dan nilai yang salah jika tidak.
Uji kasus
[0] -> True
[0, 1] -> True
[1, 0] -> True
[0, 1, 2] -> True
[0, 2, 1] -> False
[2, 1, 3, 0] -> True
[3, 1, 0, 2] -> False
[1, 2, 0, 3] -> True
[2, 3, 1, 4, 0] -> True
[2, 3, 0, 4, 1] -> False
[0, 5, 1, 3, 2, 4] -> False
[6, 5, 4, 7, 3, 8, 9, 2, 1, 0] -> True
[4, 3, 5, 6, 7, 2, 9, 1, 0, 8] -> False
[5, 2, 7, 9, 6, 8, 0, 4, 1, 3] -> False
[20, 13, 7, 0, 14, 16, 10, 24, 21, 1, 8, 23, 17, 18, 11, 2, 6, 22, 4, 5, 9, 12, 3, 15, 19] -> False
[34, 36, 99, 94, 77, 93, 31, 90, 21, 88, 30, 66, 92, 83, 42, 5, 86, 11, 15, 78, 40, 48, 22, 29, 95, 64, 97, 43, 14, 33, 69, 49, 50, 35, 74, 46, 26, 51, 75, 87, 23, 85, 41, 98, 82, 79, 59, 56, 37, 96, 45, 17, 32, 91, 62, 20, 4, 9, 2, 18, 27, 60, 63, 25, 61, 76, 1, 55, 16, 8, 6, 38, 54, 47, 73, 67, 53, 57, 7, 72, 84, 39, 52, 58, 0, 89, 12, 68, 70, 24, 80, 3, 44, 13, 28, 10, 71, 65, 81, 19] -> False
[47, 48, 46, 45, 44, 49, 43, 42, 41, 50, 40, 39, 38, 51, 37, 36, 52, 35, 34, 33, 32, 53, 54, 31, 30, 55, 56, 29, 28, 57, 58, 59, 60, 27, 26, 61, 25, 62, 63, 64, 65, 66, 67, 24, 23, 22, 21, 68, 69, 20, 19, 18, 17, 70, 71, 16, 15, 72, 73, 74, 75, 76, 14, 13, 12, 77, 11, 10, 9, 8, 78, 7, 79, 80, 6, 81, 5, 4, 3, 82, 2, 83, 84, 1, 85, 86, 87, 0, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99] -> True
Fakta menyenangkan: untuk r ≥ 1 , ada tepat 2 r-1 permutasi panjang gelisah r .