Bir Walsh matrisi , kuantum hesaplamada (ve muhtemelen başka bir yerde, ama sadece kuantum hesaplamalarını önemsiyorum) uygulamalara sahip özel bir kare matris türüdür .
Walsh matrislerinin özellikleri
Boyutlar biz onları çağıran, burada ikinin üs bu matrisleri başvurabilirsiniz nedenle 2'nin aynı güç vardır W(0), W(1), W(2)...
W(0)olarak tanımlanır [[1]].
İçin n>0, W(n)bakışlar gibi:
[[W(n-1) W(n-1)]
[W(n-1) -W(n-1)]]
Yani W(1):
[[1 1]
[1 -1]]
Ve W(2):
[[1 1 1 1]
[1 -1 1 -1]
[1 1 -1 -1]
[1 -1 -1 1]]
Desen devam ediyor ...
Senin görevin
Tamsayı girişi yapan nve W(n)uygun herhangi bir formatta basan / geri dönen bir program veya fonksiyon yazın . Bu, bir dizi dizisi, düzleştirilmiş bir boole dizisi, bir .svgresim olabilir, doğru olduğu sürece adlandırabilirsiniz.
Standart boşluklar yasaktır.
Birkaç şey:
İçin W(0), 1ihtiyaç kez bile sarılmış edilemez. Sadece bir tamsayı olabilir.
1 indeksli sonuçlara izin verilir - W(1)o zaman olur [[1]].
Test durumları
0 -> [[1]]
1 -> [[1 1]
[1 -1]]
2 -> [[1 1 1 1]
[1 -1 1 -1]
[1 1 -1 -1]
[1 -1 -1 1]]
3 -> [[1 1 1 1 1 1 1 1]
[1 -1 1 -1 1 -1 1 -1]
[1 1 -1 -1 1 1 -1 -1]
[1 -1 -1 1 1 -1 -1 1]
[1 1 1 1 -1 -1 -1 -1]
[1 -1 1 -1 -1 1 -1 1]
[1 1 -1 -1 -1 -1 1 1]
[1 -1 -1 1 -1 1 1 -1]]
8 -> pastebin
Bu kod golf , yani her dilde en kısa çözüm kazanıyor! Mutlu golf!
W(1)iadeler [[1]], W(2)iadeler [[1,1],[1,-1]...)