Definisi
Residu kuadratik
Integer disebut residu kuadrat modulo jika ada integer sehingga:
Urutan tantangan
Kami mendefinisikan sebagai jumlah minimum kejadian dengan nilai yang sama untuk semua pasangan dari modul kuadrat residu modulo .
30 istilah pertama adalah:
Ini adalah A316975 (dikirimkan oleh saya sendiri).
Contoh:
Modulo residu kuadrat adalah , , , , dan .
Untuk setiap pasangan dari residu kuadratik ini, kami menghitung , yang mengarah ke tabel berikut (di mana di sebelah kiri dan di atas):
Jumlah minimum kejadian dengan nilai yang sama dalam tabel di atas adalah (untuk , , dan ). Karenanya .
Tugas Anda
Anda dapat:
- mengambil integer dan mencetak atau kembali (baik 0-diindeks atau 1-diindeks)
- ambil bilangan bulat dan cetak atau kembalikan syarat pertama urutannya
- tidak mengambil input dan mencetak urutan selamanya
- Kode Anda harus dapat memproses salah satu dari 50 nilai pertama dari urutan dalam waktu kurang dari 1 menit.
- Diberi cukup waktu dan memori, kode Anda secara teoritis harus berfungsi untuk bilangan bulat positif yang didukung oleh bahasa Anda.
- Ini adalah kode-golf .
code-golf
sequence
number-theory
Arnauld
sumber
sumber
+n
dalam(...)mod n
tidak berpengaruh? Jika demikian, itu sangat aneh yang merupakan bagian dari definisi.(some_potentially_negative_value + n) mod n
.) Saya pikir lebih baik untuk memilikinya dalam tantangan pemrograman, karena tanda hasilnya tergantung pada bahasa .a_p = round(p/4)
, yang memberi kita nilai untuk semua bilangan kuadrat. Tapi situasinya tampaknya rumit pada kekuatan bilangan prima, dan 3 mod 4 dan 1 mod 4 kasus perlu ditangani secara terpisah.Jawaban:
MATL , 14 byte
Cobalah online! Atau verifikasi 30 nilai pertama .
Penjelasan
sumber
Japt
-g
,2220 byteTerlalu lama mencari tahu apa tantangan sebenarnya, kehabisan waktu untuk bermain golf lebih lanjut: \
Menghasilkan
n
istilah th dalam urutan. Mulai kesulitan saat input>900
.Cobalah atau periksa hasilnya untuk 0-50
Penjelasan
sumber
Jelly ,
1310 byte-1 terima kasih kepada Dennis (memaksa interpretasi diadik dengan pemimpin
ð
)-2 lebih banyak juga berkat Dennis (karena pasangan dapat diduplikasi kita dapat menghindari a
R
dan a2
)Tautan monadik yang menerima bilangan bulat positif yang menghasilkan bilangan bulat non-negatif.
Cobalah online! Atau lihat 50 istilah pertama .
Bagaimana?
sumber
05AB1E ,
22201513 byte-2 byte terima kasih kepada @Mr. Xcoder .
Cobalah secara online atau verifikasi 99 kasus pengujian pertama (sekitar 3 detik) . (CATATAN: Versi warisan Python digunakan pada TIO alih-alih penulisan ulang Elixir yang baru. Ini sekitar 10x lebih cepat, tetapi membutuhkan trailing
¬
(kepala) karena.m
mengembalikan daftar alih-alih satu item, yang telah saya tambahkan ke catatan kaki.)Penjelasan:
sumber
Ýns%ÙãÆI%D.m¢
. (tidak dalam warisan, dalam versi baru)Dâ
alih-alihã
..>.> Dan tidak tahu tindakannya.m
berbeda dalam penulisan ulang Elixir. Saya awalnya memiliki versi baru, tetapi beralih ke warisan setelah saya perhatikan¥
tidak berfungsi (yang telah Anda perbaiki denganÆ
). Saya masih menggunakan warisan pada TIO, karena cara ini lebih cepat untuk tantangan ini.C (gcc) ,
202200190188187186 byteduabelasempatbelas lima belas byte berkat ceilingcat .Cobalah online!
sumber
Python 2 , 97 byte
Cobalah online!
sumber
K (ngn / k) , 29 byte
Cobalah online!
{
}
berfungsi dengan argumenx
!x
bilangan bulat dari0
kex-1
i:
menetapkan kei
x!
modx
?
unikr:
menetapkan ker
-\:
kurangi dari masing-masing kirir-\:r
matriks semua perbedaanx!
modx
,/
menyatukan baris matriks=
grup, mengembalikan kamus dari nilai unik ke daftar indeks kemunculan#:'
panjang setiap nilai dalam kamus&/
minimumsumber
Bahasa Wolfram (Mathematica) , 64 byte
Cobalah online!
sumber
Ruby , 88 byte
Cobalah online!
sumber
APL (Dyalog Unicode) ,
2824 byteCobalah online!
Awalan fungsi langsung. Penggunaan
⎕IO←0
.Berkat Sapi dukun untuk 4 byte!
Bagaimana:
sumber
2*⍨
→×⍨
,r←¨⊂r
→∘.-⍨
,{≢⍵}
→⊢∘≢