Diberikan bilangan bulat negatif, kembalikan apakah itu bilangan tiga digit yang diakhiri dengan satu, dalam basis bilangan bulat yang konsisten. Dengan kata lain, bilangan harus diwakili dalam basis-N, N menjadi bilangan bulat lebih besar dari nol.
Aturan
- Ini kode-golf , jadi jawaban tersingkat menang.
- Karena unary berperilaku aneh, perilaku dengan input 3 10 tidak terdefinisi.
- Celah standar dilarang.
Contohnya
Benar:
5
73
101
1073
17
22
36
55
99
Salah:
8
18
23
27
98
90
88
72
68
Sejumlah besar:
46656 true
46657 true
46658 true
46659 true
46660 true
46661 false
46662 false
46663 true
46664 false
46665 true
46666 true
46667 false
46668 false
46669 false
46670 true
46671 true
n
hanyan
1
s, misalnya0 = ()₁
,3 = (111)₁
,10 = (1111111111)₁
, dllJawaban:
Jelly , 7 byte
Mengembalikan jumlah pangkalan (bukan nol menjadi benar, nol menjadi palsu) di mana input adalah angka tiga digit yang berakhir dengan satu.
Cobalah online!
Bagaimana itu bekerja
sumber
JavaScript (ES7),
434039 byteUji kasus
Tampilkan cuplikan kode
Berkomentar
sumber
Python 3 ,
5047 byte-2 byte berkat @LeakyNun
-1 byte berkat @Dennis
Cobalah online!
sumber
Haskell ,
4140 byteTerima kasih kepada @Zgarb untuk bermain golf 1 byte!
Cobalah online!
sumber
Brachylog , 10 byte
Cobalah online!
sumber
05AB1E ,
118 byteDisimpan 3 byte berkat Adnan .
Cobalah online!
Penjelasan
sumber
Jelly , 12 byte
Cobalah online!
sumber
Mathematica, 43 byte
Cobalah online!
atau Coba online! (angka besar)
Martin Ender menyimpan 3 byte
sumber
!FreeQ[#~IntegerDigits~Range@#,{_,_,1}]&
sedikit lebih pendek jika Anda tidak keberatan melihatIntegerDigits::ibase: Base 1 is not an integer greater than 1.
peringatan itu. (Itu masih mengembalikan jawaban yang benar.)Bahasa Wolfram (Mathematica) , 35 byte
Cobalah online!
Periksa secara eksplisit apakah n% i = 1 dan i 2 <n <i 3 untuk setiap basis i yang mungkin . Untuk tujuan bermain golf, ketidaksetaraan ditata ulang menjadi 1 <n / i 2 <i , sehingga dapat dirantai ke kesetaraan.
sumber
Bersih ,
5856 byte-2 berkat Dennis
Cobalah online!
sumber
Sekam , 10 byte
Cobalah online! Cukup dekat dengan jawaban Jelly dari Dennis .
sumber
APL (Dyalog Unicode) ,
212014 byte SBCS-5 terima kasih kepada @ngn.
Solusi aritmatika murni (tidak benar-benar melakukan konversi basis) dan dengan demikian sangat cepat.
Cobalah online!
⊢(
...)⍨1↓⍳
pada satu turun dari ɩ ndices 1 ... argumen dan argumen, berlaku:|
sisa divisi×∘⌈
kali pembulatan⍟
log N Argumen3∊
Apakah tiga anggota itu?sumber
⊢(∨/(3=∘⌈⍟)∧1=|)⍨1↓⍳
(⊂1 3)∊⊢(⌈|,¨⍟)⍨1↓⍳
3∊⊢(|×|×∘⌈⍟)⍨1↓⍳
1=⌈a⍟b
,a≤b
→a=b
→0=a|b
∵0=b|b
Pyth , 10 byte
Verifikasi semua kasus uji.
sumber
Sekam , 15 byte
Cobalah online!
Penjelasan
sumber
PHP, 48 +1 byte
keluar dengan
0
untuk falsy (atau input3
),1
untuk truey.Jalankan sebagai pipa dengan
-nR
atau coba online .sumber
C, 60 byte
Fungsi yang mengembalikan non-nol jika argumen dapat direpresentasikan sebagai angka tiga digit yang diakhiri dengan 1:
Catatan: ini berfungsi dengan GCC, di mana fungsinya terintegrasi. Untuk kompiler lain, Anda mungkin perlu memastikan bahwa argumen dan tipe pengembalian diketahui:
Penjelasan
Basis terendah yang
n
direpresentasikan dalam 3 digit adalah⌊∛n⌋
, dan basis terendah yangn
diwakili dalam 2 digit adalah⌊√n⌋
, jadi kami hanya menguji apakah jumlahnya kongruen dengan 1 modulo basis apa pun dalam rentang 3 digit. Kami mengembalikan hitungan jumlah pangkalan yang memenuhi persyaratan, memberikan nilai yang tidak nol (benar) atau nol (salah) sesuai kebutuhan.Program uji
Lewati sejumlah input sebagai parameter posisi:
sumber
APL (Dyalog Unicode) , 19 byte SBCS
Metode Dennis .
Cobalah online!
(⊂,1)∊
Adalah[1]
anggota dari2↓¨
dua elemen jatuh dari masing-masing⊢⊥⍣¯1¨⍨
argumen diwakili di masing-masing pangkalan1↓⍳
satu turun dari ɩ ndices 1 melalui argumen?sumber
Julia , 31 byte
Cobalah online!
sumber
Pyt ,
3533 bytePenjelasan:
Cobalah online!
sumber
> <> , 42 byte
Cobalah online!
Kembali
10
untuk kebenaran,00
untuk kebohongan.sumber