Tantangannya adalah menulis codegolf untuk permanen sebuah matriks .
Permanen dari n
-by- n
matrix A
= ( a
i,j
) didefinisikan sebagai
Berikut S_n
merupakan himpunan semua permutasi dari [1, n]
.
Sebagai contoh (dari wiki):
Namun kode Anda dapat mengambil input yang diinginkan dan memberikan output dalam format apa pun yang masuk akal, tetapi harap sertakan dalam jawaban Anda contoh yang lengkap, termasuk instruksi yang jelas tentang cara memasok input ke kode Anda. Untuk membuat tantangan sedikit lebih menarik, matriks dapat menyertakan bilangan kompleks.
Matriks input selalu berbentuk persegi dan paling banyak 6 x 6. Anda juga harus dapat menangani matriks kosong yang permanen 1. Tidak perlu lagi menangani matriks kosong (itu menyebabkan terlalu banyak masalah).
Contohnya
Memasukkan:
[[ 0.36697048+0.02459455j, 0.81148991+0.75269667j, 0.62568185+0.95950937j],
[ 0.67985923+0.11419187j, 0.50131790+0.13067928j, 0.10330161+0.83532727j],
[ 0.71085747+0.86199765j, 0.68902048+0.50886302j, 0.52729463+0.5974208j ]]
Keluaran:
-1.7421952844303492+2.2476833142265793j
Memasukkan:
[[ 0.83702504+0.05801749j, 0.03912260+0.25027115j, 0.95507961+0.59109069j],
[ 0.07330546+0.8569899j , 0.47845015+0.45077079j, 0.80317410+0.5820795j ],
[ 0.38306447+0.76444045j, 0.54067092+0.90206306j, 0.40001631+0.43832931j]]
Keluaran:
-1.972117936608412+1.6081325306004794j
Memasukkan:
[[ 0.61164611+0.42958732j, 0.69306292+0.94856925j,
0.43860930+0.04104116j, 0.92232338+0.32857505j,
0.40964318+0.59225476j, 0.69109847+0.32620144j],
[ 0.57851263+0.69458731j, 0.21746623+0.38778693j,
0.83334638+0.25805241j, 0.64855830+0.36137045j,
0.65890840+0.06557287j, 0.25411493+0.37812483j],
[ 0.11114704+0.44631335j, 0.32068031+0.52023283j,
0.43360984+0.87037973j, 0.42752697+0.75343656j,
0.23848512+0.96334466j, 0.28165516+0.13257001j],
[ 0.66386467+0.21002292j, 0.11781236+0.00967473j,
0.75491373+0.44880959j, 0.66749636+0.90076845j,
0.00939420+0.06484633j, 0.21316223+0.4538433j ],
[ 0.40175631+0.89340763j, 0.26849809+0.82500173j,
0.84124107+0.23030393j, 0.62689175+0.61870543j,
0.92430209+0.11914288j, 0.90655023+0.63096257j],
[ 0.85830178+0.16441943j, 0.91144755+0.49943801j,
0.51010550+0.60590678j, 0.51439995+0.37354955j,
0.79986742+0.87723514j, 0.43231194+0.54571625j]]
Keluaran:
-22.92354821347135-90.74278997288275j
Anda tidak boleh menggunakan fungsi yang sudah ada sebelumnya untuk menghitung permanen.
[[]]
(memiliki satu baris, matriks kosong tidak) atau []
(tidak memiliki kedalaman 2, matriks lakukan) dalam bentuk daftar?
[[]]
.