확률 행렬은 마르코프 체인의 맥락에서 사용되는 확률의 행렬이다.
오른쪽 확률 행렬은 각 행의 합계에 대한 행렬이다 1
.
왼쪽 확률 행렬은 각 열의 합에 대한 행렬이다 1
.
이중 확률 행렬의 각 행과 각 열의 합을 행렬이다 1
.
이 과제에서 정수를 사용하여 확률 을 백분율로 나타냅니다 . 이 경우에 합계의 행 또는 열해야 100
하지 1
.
목표 는 정수의 정사각형 행렬을 입력으로 받으면 행렬이 오른쪽 확률 적, 왼쪽 확률 적, 이중 확률 적 또는 둘 다 없음을 나타내는 네 가지 값 중 하나를 출력하는 프로그램 또는 함수를 작성하는 것입니다.
입력
입력 언어에 맞는 적절한 매트릭스 표현을 사용할 수 있습니다. 예를 들어, 목록 목록, 쉼표로 구분 된 문자열, 줄 바꿈으로 구분 된 행 등
입력 행렬은 항상 정사각형이며 음이 아닌 정수만 포함합니다. 입력 행렬은 항상 최소 1×1
입니다.
STDIN
함수 인수 또는 이와 유사한 것을 사용하여 입력을 전달할 수 있습니다 .
산출
오른쪽 확률 론적 , 왼쪽 확률 론적 , 이중 확률 론적 또는 그 중 어느 것에도 해당하지 않는 4 가지 출력 을 선택해야합니다 . 이러한 출력은 전달 된 입력에 관계없이 일정해야합니다. 프로그램은 어떤 부정적 번호에 대응한다는 예와 동일한 경우에 대해 서로 다른 출력을 반환하지 않을 것들 중에는 유효하지 않다.
요컨대, 네 가지 가능한 경우와 출력간에 일대일 대응이 있어야합니다. 이 네 가지 출력의 일부 예는 {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]
채점
이것은 code-golf 이므로 바이트 단위의 최단 답변이 이깁니다.