Tantangan
Untuk rentang bilangan bulat positif tertentu, temukan bilangan prima pertama dan terakhir yang seluruhnya terdiri dari angka bilangan prima, termasuk 0 (untuk digit , kisaran 0-2 harus menghasilkan 2-2). Rentang ini inklusif. Jika tidak ada angka yang ditemukan, output yang diharapkan adalah 0. Jika hanya ada satu nomor, output yang diharapkan adalah angka itu dua kali.
Contohnya
- Untuk rentang 1-100, bilangan prima pertama adalah 2 dan yang terakhir adalah 73 (7 dan 3 adalah bilangan prima).
- Untuk rentang 70–80, bilangan prima pertama adalah 73 dan yang terakhir juga 73 (Karena hanya ada satu nomor yang benar dalam rentang yang diberikan, kami mengembalikannya dua kali).
- Untuk rentang 190-200, tidak ada jawaban yang benar, jadi Anda mengembalikan 0.
- Untuk rentang 2000-2100, bilangan prima pertama adalah 2003 dan yang terakhir adalah 2053 (kami menghilangkan digit 0, tetapi semua digit lainnya adalah bilangan prima)
Ini adalah kode-golf , jadi kode terpendek dalam byte menang!
Semua celah standar berlaku.
Memasukkan
- Anda bebas untuk menerima dua bilangan bulat sebagai input namun Anda mungkin melihat kecocokan, tumpukan, argumen fungsi, argumen CLI, stdin.
- Anda hanya harus menerima dua bilangan bulat.
Keluaran
- Anda harus mengembalikan hasilnya (tuple, array, multi-return jika bahasa Anda mendukungnya), meninggalkannya di tumpukan, atau mencetaknya (dalam hal ini, mereka harus dipisahkan entah bagaimana).
- Urutan output tidak relevan.
- Anda diizinkan untuk memimpin / mengikuti tanda kurung dan baris baru.
- Anda harus mengembalikan dua angka, jika ada jawaban, meskipun sama.
- Anda harus mengembalikan 0 jika tidak ada jawaban.
0
bukan[0]
?Jawaban:
Python 2 , 123 byte
Cobalah online!
sumber
Perl 6,
105949086 bytesumber
JavaScript (ES6), 83 byte
Mengambil rentang [ab] dalam sintaks currying
(a)(b)
. Mengembalikan array 2 elemen atau 0 .Uji kasus
Tampilkan cuplikan kode
sumber
Mathematica, 91 byte
Cobalah online!
sumber
Jelly , 14 byte
Cobalah online!
Bagaimana itu bekerja
Jika mengambil seluruh jajaran akan diizinkan (meskipun saya pikir seharusnya tidak), maka 12 byte:
Cobalah online!
sumber
For a given positive integers range
. Saya akan minta klarifikasi0
adalah pengecualian dari tantangan, karena itu harus diperlakukan sebagai digit utama karena beberapa alasan). Bagaimanapun, saya memposting versi yang lebih pendek dan validBrachylog , 16 byte
Cobalah online!
"Return 0 jika tidak ada prime" yang sepenuhnya
|∧0
tidak masuk akal membuat kita kehilangan 3 byte ( ) tanpa alasan (itu akan kembalifalse.
jika kita tidak menambahkannya)Penjelasan
sumber
[2000, 2100]
Pyth , 24 byte
Menggunakan pendekatan awal saya ternyata lebih pendek.
Coba di sini!
(Saya baru saja memperbarui ke 23 tetapi Steven mengalahkan saya untuk itu )
Coba di sini!
Secara alami,
hM_BK
bisa diganti oleh,hKeK
.25 byte
Coba di sini!
26 byte
Coba di sini!
Coba di sini!
Bagaimana mereka bekerja
sumber
Mathematica 85 Bytes
Saya tahu sudah ada jawaban yang sama, tetapi pendekatan di sini sangat berbeda.
Jawaban 83 karakter ini akan ditempel dan dijalankan di Mathematica. Situs TIO tidak tahu bagaimana menafsirkan ∞.
sumber
Jelly , 14 byte
Cobalah online!
Terima kasih kepada Erik Outgolfer untuk bantuan memperbaiki bug. Terima kasih kepada Tn. Xcoder untuk
.ị
triknya.sumber
ṙ-ḣ2
berhasil untukḢ,Ṫ
memperbaikinya (mungkin harus memodifikasi sedikit lagi)?.ị
mungkin bekerja juga (agak dicuri dari Tn. XCoder)Ruby , 87 byte
Cobalah online!
sumber
CJam , 36 byte
Cobalah online!
sumber
Perl 6 ,
68 66 65 6158 byteCobalah
Cobalah
Cobalah
Cobalah
Cobalah
Diperluas:
sumber
Perl 5 , 79 + 2 (
-ap
) = 81 byteCobalah online!
sumber
Java 8,
165164 bytePenjelasan:
Coba di sini.
sumber
Bersih ,
142131125 byteTidak Disatukan:
Cobalah online!
sumber
Pyth,
282523 byteSuite uji. Pengembalian [2003,2053] untuk kasus uji terakhir, karena 2053 adalah prima.
sumber
[0, 0]
bukan0