เมทริกซ์สุ่มเป็นเมทริกซ์ของความน่าจะใช้ในบริบทของโซ่มาร์คอฟ
ขวา1
เมทริกซ์สุ่มเป็นเมทริกซ์ที่แต่ละเงินก้อนแถว
ซ้าย1
เมทริกซ์สุ่มเป็นเมทริกซ์ที่แต่ละเงินก้อนคอลัมน์
ทวีคูณ1
เมทริกซ์สุ่มเป็นเมทริกซ์ที่แต่ละแถวและแต่ละเงินก้อนคอลัมน์
ในความท้าทายนี้เราจะเป็นตัวแทนของความน่าจะเป็นในการใช้ร้อยละจำนวนเต็ม แถวหรือคอลัมน์ต้องในกรณีที่จำนวนเงินนั้นไปและไม่ได้100
1
เป้าหมายของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่นซึ่งกำหนดให้เมทริกซ์จตุรัสของจำนวนเต็มเป็นอินพุตเอาต์พุตหนึ่งในสี่ค่าที่บ่งชี้ว่าเมทริกซ์นั้นเป็นแบบสุ่มขวา, สุ่มซ้าย, สุ่มสองเท่าหรือไม่มีเลย
อินพุต
คุณอาจใช้การแทนค่าที่เหมาะสมของเมทริกซ์ที่เป็นธรรมชาติสำหรับภาษาของคุณสำหรับอินพุต ตัวอย่างเช่นรายการของรายการสตริงของค่าที่คั่นด้วยเครื่องหมายจุลภาคโดยมีแถวคั่นด้วย linebreaks เป็นต้น
เมทริกซ์อินพุตจะเป็นสี่เหลี่ยมจัตุรัสเสมอและจะมีจำนวนเต็มไม่เป็นลบเท่านั้น เมทริกซ์อินพุตจะมีอย่างน้อยที่สุด1×1
เสมอ
คุณสามารถส่งผ่านอินพุตโดยใช้STDIN
เป็นอาร์กิวเมนต์ฟังก์ชันหรือสิ่งอื่นที่คล้ายกัน
เอาท์พุต
คุณต้องเลือกสี่ผลที่แตกต่างกันที่ตรงกับสุ่มขวา , ซ้ายสุ่ม , ทวีคูณสุ่มหรือไม่มีผู้ เอาต์พุตเหล่านั้นต้องคงที่โดยไม่คำนึงว่าอินพุตใดถูกส่งผ่าน โปรแกรมของคุณอาจไม่ส่งคืนผลลัพธ์ที่แตกต่างกันสำหรับกรณีเดียวกันเช่นการพูดว่าจำนวนลบใด ๆ ที่ตรงกับสิ่งเหล่านั้นไม่ถูกต้อง
ในระยะสั้นจะต้องมีการติดต่อแบบ 1 ต่อ 1 ระหว่างการส่งออกของคุณเป็นกรณีที่เป็นไปได้ทั้งสี่ ตัวอย่างบางส่วนของบรรดาสี่เอาท์พุทจะเป็น{1, 2, 3, 4}
หรือหรือแม้กระทั่ง{[1,0], [0,1], [1,1], [0,0]}
{right, left, doubly, none}
โปรดระบุคำตอบของคุณในผลลัพธ์สี่รายการที่โปรแกรมของคุณใช้
หากเมทริกซ์สุ่มสุ่มคุณต้องส่งคืนผลลัพธ์ที่สอดคล้องกับสุ่มสองครั้งและไม่ใช่สุ่มซ้ายหรือขวา
คุณอาจพิมพ์ผลลัพธ์ไปที่STDOUT
ส่งคืนจากฟังก์ชันหรือสิ่งอื่นที่คล้ายคลึงกัน
กรณีทดสอบ
[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]
เกณฑ์การให้คะแนน
นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดในหน่วยไบต์ชนะ