Segitiga Seidel adalah konstruksi matematika yang mirip dengan Segitiga Pascal, dan dikenal karena hubungannya dengan angka Bernoulli.
Beberapa baris pertama adalah:
1
1 1
2 2 1
2 4 5 5
16 16 14 10 5
16 32 46 56 61 61
Setiap baris dihasilkan sebagai berikut:
Jika nomor baris genap (1-diindeks):
Turunkan item pertama dari baris sebelumnya
Setiap item berikutnya adalah jumlah dari item sebelumnya dan item di atasnya
Gandakan item terakhir
Jika nomor barisnya ganjil:
Turunkan item terakhir dari baris sebelumnya
Ke belakang , setiap item adalah jumlah dari item sebelumnya dan item di atasnya
Gandakan apa yang sekarang menjadi item pertama.
Pada dasarnya, kita membangun segitiga dalam pola zig-zag:
1
v
1 > 1
v
2 < 2 < 1
v
2 > 4 > 5 > 5
Untuk informasi lebih lanjut, lihat halaman Wikipedia tentang nomor Bernoulli.
Tantangan:
Diberikan n
, baik sebagai argumen fungsi atau dari STDIN, cetak atau kembalikan n
baris th dari segitiga Seidel atau n
baris pertama . Anda dapat menggunakan pengindeksan 0 atau 1.
Anda tidak perlu menangani input negatif atau non-integer (atau 0, jika 1-diindeks). Anda tidak harus menangani keluaran yang lebih besar dari2147483647 = 2^31 - 1
Karena ini adalah kode-golf, lakukan ini dalam byte sesedikit mungkin.
Contoh:
Dalam contoh ini nilai kembali adalah n
baris ke-0, diindeks.
Input -> Output
0 1
1 1 1
2 2 2 1
6 272 272 256 224 178 122 61
13 22368256 44736512 66750976 88057856 108311296 127181312 144361456 159575936 172585936 183194912 191252686 196658216 199360981 199360981