Bir stokastik matris Markov zincirlerinin bağlamında kullanılan olasılıkların matrisidir.
Bir doğru stokastik matris her sıra toplamı bir matristir 1
.
Bir sol stokastik matris, her sütun toplamları bir matristir 1
.
İki kat rasgele bir matris, her satırın ve her sütunun toplandığı bir matristir 1
.
Bu mücadelede, tamsayıları kullanma olasılığını yüzde olarak temsil edeceğiz . Bir satır veya sütun bu durumda toplamalı 100
ve toplamalı olmalıdır 1
.
Amacınız , girdi olarak kare bir tamsayı matrisi verildiğinde, matrisin ya sağ stokastik, sol stokastik, iki kat stokastik ya da bunlardan hiçbirinin olmadığını gösteren dört değerden birini veren bir program ya da fonksiyon yazmaktır.
Giriş
Giriş için kendi diliniz için doğal olan bir matrisin herhangi bir uygun gösterimini kullanabilirsiniz. Örneğin, bir listeler listesi, bir virgül dizesi, satırları çizgilerle ayrılmış vb.
Giriş matrisi her zaman kare olacak ve yalnızca negatif olmayan tam sayılar içerecektir. Giriş matrisi her zaman en azından olacaktır 1×1
.
STDIN
Bir işlev argümanı veya benzer bir şey kullanarak girişi iletebilirsiniz .
Çıktı
Sağ stokastik , sol stokastik , iki kat stokastik veya bunlardan hiçbirine karşılık gelen dört farklı çıktı seçmelisiniz . Bu çıktılar, hangi girişin geçtiğinden bağımsız olarak sabit olmalıdır. Programınız aynı durum için farklı çıktılar döndürmeyebilir, örneğin, herhangi bir olumsuz sayının bunların hiçbirine karşılık gelmediğini söylemek.
Kısacası, çıktınızla dört olası dava arasında bire bir yazışma olmalıdır. Bu dört çıkış bazı örnekleri olacaktır {1, 2, 3, 4}
ya da {[1,0], [0,1], [1,1], [0,0]}
hatta {right, left, doubly, none}
.
Lütfen cevabınızda programınızın kullandığı dört çıktıyı belirtin.
Eğer bir matris iki kat stokastik ise, o zaman iki kat stokastik karşılık gelen çıktısını iade etmelisiniz, sağ veya sol stokastik değil.
Çıktıyı STDOUT
bir işlevden veya benzer bir şeyden geri almak için yazdırabilirsiniz .
Test durumları
[100] => Doubly stochastic
[42] => None of those
[100 0 ] => Doubly stochastic
[0 100]
[4 8 15]
[16 23 42] => Left stochastic
[80 69 43]
[99 1 ] => Right stochastic
[2 98]
[1 2 3 4 ]
[5 6 7 8 ] => None of those
[9 10 11 12]
[13 14 15 16]
puanlama
Bu kod golf , yani bayt cinsinden en kısa cevap kazanır.