The On-Line Encyclopedia of Integer Sequences (OEIS) adalah database online urutan integer. Ini berisi hampir 280000 urutan minat matematika.
Contoh urutan:
Tugas Anda adalah menulis program atau fungsi yang menampilkan sebanyak mungkin urutan OEIS, dengan kode sumber maksimum 100 byte . Program Anda harus menerima sebagai input nomor urut (tanpa nomor prabayar A
dan nol), dan output 20 angka pertama dalam urutan itu.
Anda tidak diperbolehkan mengambil data secara langsung dari situs web OEIS; semua urutan harus dihitung oleh kode Anda.
Mencetak gol
Skor adalah jumlah urutan OEIS yang dapat ditampilkan oleh program. Jawaban harus mencantumkan ID dari urutan yang dikenali oleh program mereka.
Contoh
Berikut jawaban yang valid di Java 8:
(int a) -> {
for (int i = 0; i < 20; i++) {
System.out.println(a==27?i+1:i*i);
}
};
Program ini dapat menampilkan bilangan bulat positif (A000027 - input 27) dan kotak (A000290 - input 290), sehingga nilainya 2.
Catatan
Harap hindari mengikis seluruh situs web OEIS :-) Anda dapat mengunduh nama urutan (sekitar 3 MB) atau nilai urutan (sekitar 9 MB). Perhatikan bahwa unduhan ini dicakup oleh Perjanjian Lisensi Pengguna Akhir OEIS .
Jawaban:
CJam (
2182 27803034 urutan)Ini memberikan jawaban yang benar untuk rentang inklusif
[A040000, A040003]
,[A040005, A040008]
,[A040011, A040013]
,A040015
,[A040019, A040022]
,A040024
,[A040029, A040033]
,A040035
,A040037
,[A040041, A040043]
,A040048
,A040052
,[A040055, A040057]
,A040059
,A040063
,[A040071, A040074]
,A040077
,A040080
,[A040090, A040091]
,[A040093, A040094]
,A040097
,A040099
,[A040109, A040111]
,A040118
,A040120
,[A040131, A040135]
,A040137
,A040139
,[A040142, A040143]
,A040151
,[A040155, A040157]
,A040166
,A040168
,[A040181, A040183]
,[A040185, A040968]
[A041006, A041011]
,[A041014, A042937]
A006983
,[A011734, A011745]
,[A023975, A023976]
,[A025438, A025439]
,[A025443, A025444]
,A025466
,A025469
,[A034422, A034423]
,A034427
,A034429
,A034432
,A034435
,[A034437, A034439]
,A034441
,A034443
,A034445
,A034447
,[A034449, A034459]
,[A034461, A034462]
,[A034464, A034469]
,A034471
,A034473
,[A034475, A034477]
,[A034479, A034487]
,[A034489, A034490]
,[A034492, A034493]
,A034495
,[A034497, A034512]
,[A034514, A034516]
,[A034518, A034523]
,[A034525, A034582]
,A036861
,A047752
,A052375
,A055967
,A061858
,A065687
,A066035
,A067159
,A067168
,A070097
,A070202
,A070204
,[A070205, A070206]
,A072325
,A072769
,A076142
,A082998
,A083344
,A085974
,A085982
,A086007
,A086015
,A089458
,A093392
,A094382
,A105517
,A108322
,A111855
,A111859
,[A111898, A111899]
,A112802
,A122180
,A129947
,A137579
,A159708
,[A161277, A161280]
,A165766
,A167263
,A178780
,A178798
,A180472
,A180601
,A181340
,A181735
,A184946
,A185037
,A185203
,[A185237, A185238]
,[A185245, A185246]
,A185255
,A185264
,A185284
,A191928
,A192541
,A197629
,A198255
,A200214
,A206499
,A210632
,A212619
,[A217148, A217149]
,A217151
,[A217155, A217156]
,A228953
,A230533
,A230686
,A235044
,A235358
,A236265
,A236417
,A236460
,A238403
,[A243831, A243836]
,A248805
,A250002
,A256974
,A260502
,A264668
,A276183
,A277165
,A280492
,A280815
The
A040???
urutan sesuai dengan fraksi terus akar kuadrat non-rasional darisqrt(2)
kesqrt(1000)
(dengan kesenjangan yang sesuai dengan orang-orang yang muncul di awal Oei, tapi nyaman diisi dengan urutan acak). TheA041???
urutan sesuai dengan pembilang dan penyebut dari fraksi terus convergents untuk akar kuadrat non-rasional darisqrt(6)
kesqrt(1000)
(dengan kesenjangan yang sesuai dengansqrt(10)
, diA005667 and A005668
). Urutan berbagai macam lainnya memiliki nol untuk dua puluh nilai pertama mereka.Jawaban port elemen dari dua jawaban saya sebelumnya di GolfScript:
Banyak terima kasih kepada xnor untuk
x -> x + round(sqrt(x))
offset urutan pemetaan bentuk tertutup pendek ke nilai ke sqrt. Penghematan pada kalkulasi saya sebelumnya (menghasilkan daftar non-kuadrat dan memilih berdasarkan indeks) memberikan cukup untuk memiliki semua-nol mundur untuk sebagian besar indeks di luar kisaran.sumber
n + round(sqrt(n))
?sqrt(n)
tetapi tidak terpikir oleh saya untuk membulatkan ke terdekat daripada ke bawah. Itu memberikan penghematan tiga byte langsung, yang tidak cukup untuk menambah mundur tetapi tetap membuat harapan tetap hidup.Python 2, 875 urutan
Berfungsi untuk 875 dari urutan 21016 (angka desimal 1/12) hingga 21999 (angka desimal 1/995).
Saya menemukan potongan ini dengan algoritma pencarian canggih mengetik sembarang urutan id dengan tangan. Beberapa urutan dalam rentang ini bukan dari format ini dan muncul di tempat lain (terima kasih kepada Mitchell Spector untuk menunjukkan ini). Misalnya, 21021 bukan perluasan 1/17.
Bahkan dengan interupsi, urutan untuk 1 / n muncul sebagai id
n+21004
. Sisanya tidak bergeser, tetapi urutan yang hilang muncul di tempat lain. Misalnya, 1/17 muncul sebagai 7450 .Saya menghitung yang cocok menggunakan salinan nama urutan yang diunduh .
Blok yang berbeda menghasilkan 848 urutan dari 16742 hingga 17664 .
Ini semua memiliki bentuk
n -> (a*n+b)^c
, di mana2≤a≤12, 0≤b<a, 1≤c≤12
. Kode mengekstrak koefisien melalui pembalikan angka segitiga dan moduli. Seperti sebelumnya, tidak semua urutan dalam rentang cocok. Jika dua ekspresi ini bisa muat dalam 100 byte, itu akan memberikan 1.723 urutan.Potongan yang menjanjikan:
Berikut adalah kategori untuk potongan potensial lainnya, melalui pengelompokan nama urutan OEIS dengan menghapus semua angka (digit, tanda minus, titik desimal). Mereka diurutkan berdasarkan jumlah penampilan.
35 urutan:
Bekerja dari 8585 (kelipatan 3) hingga 8607 (kelipatan 25), dan 1018 (kekuatan 8) hingga 1029 (kekuatan 19). Mudahnya, ini semua dalam satu potongan yang dipesan oleh id.
Ini hanya menggunakan 65 dari 100 byte yang diizinkan dan belum sepenuhnya golf, jadi saya akan mencari potongan bagus lainnya.
sumber
lambda n:range(0,(n-8582)*20,n-8582)
Bash + coreutils, 252 urutan
Cobalah online!
Bekerja pada 252 sekuens OEIS: A000004, A006983, A011734, A011735, A011736, A011737, A011738, A011740, A011740, A011741, A011742, A011743, A011744, A011744, A0325, A011725, A011735, A011735, A011735, A011737. A034422, A034423, A034427, A034429, A034432, A034435, A034437, A034438, A034439, A034441, A034443, A034445, A034447, A034449, A034450, A034451, A034452, A034453, A034454, A034455, A034456, A034457, A034458, A034459, A034461. A034462, A034464, A034465, A034466, A034467, A034468, A034469, A034471, A034473, A034475, A034476, A034477, A034479, A034480, A034481, A034482, A034483, A034484, A034485, A034486, A034487, A034489, A034490, A034492, A034493, A034495, A034497, A034498, A034499, A034500, A034501, A034502, A034503, A034504, A034505, A034506, A034507, A034508, A034509, A034503, A0344510, A0344510, A034453, A034501, A034495A034518, A034519, A034520, A034521, A034522, A034523, A034525, A034526, A034527, A034528, A034529, A034530, A034531, A034532, A034533, A034534, A034535, A034536, A034537, A034538, A034539, A034540, A034541, A034542, A034543, A034544, A034545, A034546, A034547, A034548, A034549, A034550, A034551, A034552, A034553, A034554, A034555, A034556, A034557, A034558, A034559, A034560, A034561, A034562, A034563, A034564, A034565, A034566, A034567, A034568, A034569, A034570, A034571, A034572, A034573, A034574, A034575, A034576, A034577, A034578, A034579, A034580, A034581, A034582, A036861, A047752, A052375, A055967, A061858, A065687, A066035, A067159, A067168, A070097, A070202, A070204, A070205, A070206, A072325, A072769, A076142, A082998, A083344, A085974, A085982, A086007, A086015, A089458, A093392, A09411218, A11901111811118, A1070146A111899, A112802, A122180, A129947, A137579, A159708, A161277, A161278, A161279, A161280, A1657263, A178780, A178798, A180472, A180601, A180601, A181340318, A181232, A181240, A181270, A16977 A185255, A185264, A185284, A19192828, A192562, A197629, A198255, A200214, A206499, A210632, A212619, A217148, A217149, A217151, A217155, A217156, A2178302302302302302302302302302302302302302303303303 Dengan Tidak Ada Tidak Ada A243831, A243832, A243833, A243834, A243835, A243836, A248805, A250002, A25692, A256974, A260502, A264668, A276183, A277165, A280492, A280498A198255, A200214, A206499, A210632, A212619, A217148, A217141, A217151, A217155, A217156, A228953, A230533, A230686, A235044, A2353565, A236265, A236438, A234438, A32, A32, A328, A328255, A200214, A206499, A210632, A212619, A217148 A248805, A250002, A256974, A260502, A264668, A276183, A277165, A280492, A280815A198255, A200214, A206499, A210632, A212619, A217148, A217149, A217151, A217155, A217156, A228953, A230533, A230686, A235044, A2353565, A236265, A236438, A234438, A32, A32, A328, A328255, A200214, A206499, A210632, A212619, A217148 A248805, A250002, A256974, A260502, A264668, A276183, A277165, A280492, A280815
sumber
Python (dengan sympy),
144146 urutanFungsi ini
f
bekerja untuk urutan 146 A016578 hingga A016723 inklusif.Semua ini adalah output dengan memanfaatkan tes di repl.it .
The 49 urutan A016578 melalui A016626 inklusif adalah ekspansi desimal log (3/2), log (5/2), log (7/2), ..., log (99/2).
Itu 97 urutan A016627 melalui A016723 inklusif adalah ekspansi desimal log (4), log (5), log (6), ..., log (100).
Pertama dua dari 49 mulai dari tempat desimal pertama sejak nilai log bagi mereka yang kurang dari 1 , sehingga
[-20:]
mengambil trailing 20 tempat desimal dari hasil panggilan untuk...n(20)
yang mendapat 20 angka signifikan. Theif'.'<c
filter keluar karakter desimal, danint(c)
gips masing-masing karakter yang tersisa digit ke integer (meskipun mungkin tidak diperlukan).sumber
Jeli,
11271975 urutan- saat ini menggabungkan temuan xnor dan Mitchell Spector , tetapi masih memiliki ruang untuk pertumbuhan pada 78 byte. Pergi beri mereka kredit!
TryItOnline!
Urutan 1975 adalah:
[16000,21999]
);(a*n+b)**c
rumus (perilaku untuk input masuk[16000,17999]
); dan1/n
(perilaku untuk input masuk)[18000,21999]
).Bagaimana?
sumber
Mathematica,
39173189 urutanTerinspirasi oleh jawaban Jonathan Allan .
Bekerja untuk:
{0, 1, 2, ... , 19}
)sumber
CJam, 1831 urutan
Ini memberikan hasil yang benar untuk 199 urutan yang dimulai
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
dan semua urutan dalam rentang inklusif[A168680, A169579]
dan[A170000, A170731]
. Sebagian besar berurusan dengan dua rentang, dengan mundur untuk semua-nol sebelum dimulainya rentang pertama.Dua rentang yang dimaksud memiliki formulir
untuk nilaiP mulai dari 3 untuk 50 dan nilai-nilai Q mulai dari 17 untuk 50 . Fungsi menghasilkan mereka diberikan dengan cara yang benar-benar tidak efisien: Saya merasa berguna untuk melipatgandakan pembilang dan penyebut( t - 1 ) memberi gf
sumber
Batch, 62 urutan
Hanya menerapkan satu blok urutan itu sulit, tetapi saya berhasil dua dalam 89 byte! Penjelasan: Untuk parameter
%1
8585-8607,22956-%1>>16
mengembalikan nol, menyebabkan(22956-%1)
ekspresi diabaikan dan kami akhirnya mengalikan variabel loop masing-masing dengan 3-25, sedangkan untuk parameter 22958-22996 mengembalikan parameter minus yang menyebabkan ekspresi menjadi dinegasikan, sementaran|
faktor multiplikasi diganti dengan minus satu secara efektif mengurangi variabel loop.sumber
PHP , 28 byte, 33 Urutan saya asumsikan
Cobalah online!
https://oeis.org/A000004 0 https://oeis.org/A007395 2 https://oeis.org/A010701 3 https://oeis.org/A010709 4 https://oeis.org/A010716 5 https://oeis.org/A010722 6 https://oeis.org/A010727 7 https://oeis.org/A010731 8 https://oeis.org/A010734 9 https://oeis.org/A010692 10 https://oeis.org/A010850 11 https://oeis.org/A010851 12 https://oeis.org/A010852 13 https://oeis.org/A010854 15 https://oeis.org/A010855 16 https://oeis.org/A010857 18 https://oeis.org/A010859 20 https://oeis.org/A010861 22 https://oeis.org/A010863 24 https://oeis.org/A010871 32
sumber