Một ma trận ngẫu nhiên là một ma trận xác suất được sử dụng trong bối cảnh của chuỗi Markov.
Một ma trận ngẫu nhiên đúng là một ma trận trong đó mỗi hàng tính tổng 1
.
Một ma trận ngẫu nhiên bên trái là một ma trận trong đó mỗi cột tính tổng 1
.
Một ma trận ngẫu nhiên kép là một ma trận trong đó mỗi hàng và mỗi cột tính tổng 1
.
Trong thử thách này, chúng tôi sẽ đại diện cho xác suất tính bằng phần trăm bằng cách sử dụng số nguyên . Một hàng hoặc cột phải trong trường hợp đó tổng hợp 100
và không 1
.
Mục tiêu của bạn là viết một chương trình hoặc hàm, đưa ra một ma trận vuông các số nguyên làm đầu vào, đưa ra một trong bốn giá trị chỉ ra rằng ma trận là ngẫu nhiên phải, ngẫu nhiên trái, ngẫu nhiên hoặc không có giá trị nào.
Đầu vào
Bạn có thể sử dụng bất kỳ biểu diễn thích hợp nào của ma trận tự nhiên cho ngôn ngữ của bạn cho đầu vào. Ví dụ: danh sách các danh sách, một chuỗi các giá trị được phân tách bằng dấu phẩy với các hàng được phân tách bằng dấu ngắt dòng, v.v.
Ma trận đầu vào sẽ luôn là hình vuông và sẽ chỉ chứa các số nguyên không âm. Ma trận đầu vào sẽ luôn luôn ít nhất 1×1
.
Bạn có thể chuyển đầu vào bằng cách sử dụng STDIN
, làm đối số hàm hoặc bất cứ thứ gì tương tự.
Đầu ra
Bạn phải chọn bốn đầu ra riêng biệt tương ứng với stochastic phải , stochastic trái , stochastic đôi hoặc không có cái nào trong số đó . Những đầu ra đó phải là hằng số bất kể đầu vào nào được thông qua. Chương trình của bạn có thể không trả về các đầu ra khác nhau cho cùng một trường hợp, ví dụ: nói rằng bất kỳ số âm nào tương ứng với không có số nào không hợp lệ.
Nói tóm lại, phải có sự tương ứng 1-1 giữa đầu ra của bạn trong bốn trường hợp có thể xảy ra. Một số ví dụ về bốn kết quả đầu ra sẽ {1, 2, 3, 4}
hay {[1,0], [0,1], [1,1], [0,0]}
hoặc thậm chí {right, left, doubly, none}
.
Vui lòng cho biết trong câu trả lời của bạn bốn kết quả đầu ra mà chương trình của bạn sử dụng.
Nếu một ma trận là ngẫu nhiên kép, thì bạn phải trả lại đầu ra tương ứng với ngẫu nhiên kép, và không phải ngẫu nhiên phải hoặc trái.
Bạn có thể in đầu ra STDOUT
, trả lại từ một chức năng hoặc bất cứ thứ gì tương tự.
Các trường hợp thử nghiệm
[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]
Chấm điểm
Đây là môn đánh gôn , vì vậy câu trả lời ngắn nhất bằng byte sẽ thắng.