pengantar
Keluarkan semua angka dalam basis tertentu yang akan muncul dalam versi tujuh game yang diadaptasi.
Tantangan
Tugas Anda adalah menampilkan semua angka dalam basis tertentu dalam rentang tertentu, melewatkan yang cocok dengan kondisi tertentu.
Anda akan diberikan empat input: base
elim
start
dan end
. Peran keempat variabel tersebut adalah sebagai berikut:
base
menentukan basis apa yang kami gunakan untuk tiga variabel lainnya, dan juga untuk output. Salah satu cara untuk mengekspresikannya adalah menggunakan karakter tunggal yaitu '8', '9' atau huruf kapital dari 'A' ke 'Z', menggunakan 'A' untuk sistem desimal, dan 'G' untuk sistem heksadesimal. Basis yang diharapkan akan didukung adalah 8 hingga 35 (inklusif). Ini hanya cara saya yang disarankan untuk mengekspresikanbase
dan saya akan menggunakannya di bagian Input dan Output Contoh , tetapi juga baik untuk menggunakan cara Anda sendiri untuk mengekspresikannya. Misalnya, Anda dapat memilih untuk memformatbase
sebagai representasi desimal seperti biasanya.start
danend
dua string yang menentukan kisaran angka yang akan dikeluarkan, dinyatakan dalam yang diberikanbase
. Jikabase
adaG
danstart
ada10
danend
sedang1F
, Anda perlu output10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
, tetapi Anda juga perlu menghilangkan beberapa berdasarkan apa yangelim
ada, yang akan dijelaskan segera.elim
adalah karakter tunggal dan harus merupakan digit yang valid dalam yang diberikanbase
. Semua angka yang mengandung digitelim
atau kelipatannyaelim
harus dihilangkan dari daftar untuk menghasilkan hasil akhir.
Dalam kasus di atas, jika elim
ada 7
, maka 17
perlu dihilangkan karena mengandung digit 7
. 15
dan 1C
juga perlu dihilangkan karena mereka adalah kelipatan 7
. Jadi hasil akhirnya10 11 12 13 14 16 18 19 1A 1B 1D 1E 1F
Uji Kasus
Input -> Output
G,7,10,1F -> 10 11 12 13 14 16 18 19 1A 1B 1D 1E 1F
A,3,1,100 -> 1 2 4 5 7 8 10 11 14 16 17 19 20 22 25 26 28 29 40 41 44 46 47 49 50 52 55 56 58 59 61 62 64 65 67 68 70 71 74 76 77 79 80 82 85 86 88 89 91 92 94 95 97 98 100
G,A,96,C0 -> 97 98 99 9B 9C 9D 9E 9F B0 B1 B2 B3 B5 B6 B7 B8 B9 BB BC BD BF C0
Kasing tes ketiga ditambahkan setelah posting asli. Semua jawaban yang diposting sebelum suntingan telah diuji dan lulus tes ketiga.
Spesifikasi
Masukan akan selalu valid jadi jangan khawatir tentang penanganan pengecualian.
Ini adalah kode-golf , jumlah byte terendah yang menang.
Anda dapat mengambil input dan memberikan output melalui formulir standar apa pun , dan Anda bebas memilih format.
Seperti biasa, celah default berlaku di sini.
Ini didasarkan pada (versi kehidupan nyata) permainan tujuh .
Saya
base
harus setidaknya 8 murni karena selera pribadi. Saya hanya tidak ingin melihat jumlah digit dalam urutan tumbuh terlalu cepat.
Papan angka
Cuplikan diambil dari pertanyaan ini . Jalankan cuplikan untuk mendapatkan papan skor.
start
, end
dan elim
lebih lunak.
"G,7,10,1F"
input, pendekatan yang sepenuhnya fleksibel akan memungkinkan, misalnya, [16,7,16,31]
sebagai input dan [[1,0],[1,1],[1,2],[1,3],[1,4],[1,6],[1,8],[1,9],[1,10],[1,11],[1,13],[1,14],[1,15]]
sebagai output. (Perhatikan bahwa jawaban pertama menganggap sebagian dari ini sudah diizinkan, karena cukup standar - tetapi sepenuhnya terserah Anda).
base,elim,start,end
, 'A' untuk sistem desimal , 'G' untuk sistem heksadesimal ), cobalah memformat kasus pengujian Anda dengan cara yang mudah dilakukan. gunakan dan pertimbangkan untuk menggunakan Kotak Pasir untuk menerima umpan balik sebelum memposting ke situs utama. Secara keseluruhan, ini adalah tantangan pertama yang bagus!