Katakanlah substring adalah bagian berkelanjutan dari string asli. Misalnya catadalah substring dari concatenate. Kami akan mengatakan bahwa substring yang tepat adalah substring yang tidak sama dengan string asli. Misalnya concatenateadalah substring concatenatetetapi bukan substring yang tepat. (string karakter tunggal tidak memiliki substring yang tepat)
Kami sekarang akan menentukan urutan menggunakan istilah-istilah ini. The n th istilah dalam urutan ini akan menjadi nomor terkecil sehingga ada substring yang tepat dari representasi biner yang bukan merupakan substring dari setiap istilah sebelumnya dalam urutan. Istilah pertama adalah 10.
Sebagai latihan mari kita menghasilkan 5 istilah pertama. Saya akan bekerja dalam biner untuk mempermudah.
Istilah pertama adalah 10. Karena 11, angka terkecil berikutnya, hanya memiliki satu substring yang tepat, 1yang juga merupakan substring 10, 11tidak ada dalam urutan. 100Namun memang mengandung substring 00yang tepat yang bukan substring 10sehingga 100adalah istilah kita selanjutnya. Berikutnya adalah101 yang berisi substring unik yang tepat 01menambahkannya ke urutan, lalu 110berisi substring 11yang tepat yang baru menambahkannya ke urutan.
Sekarang kita punya
10, 100, 101, 110
111berikutnya, tetapi hanya berisi substring 1dan 11membuatnya bukan istilah. 1000Namun berisi 000menambahkannya ke urutan.
Berikut adalah istilah pasangan pertama dalam desimal
2, 4, 5, 6, 8, 9, 10, 11, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 30, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 50, 54, 56, 58
Tugas
Antara
Ambil n sebagai input dan hasilkan istilah ke- n dalam urutan ini (0 atau 1 diindeks)
Secara kontinu menampilkan persyaratan urutan
Ini adalah jawaban kode-golf diberi skor dalam byte dengan lebih sedikit byte menjadi lebih baik.
n)?
a(36)adalah 47 (1 diindeks).