이 도전에서 나는 정사각형 행렬의 QR 분해를 찾도록 요청할 것입니다. 행렬의 QR 분해 A는 두 행렬이다 Q 및 R 되도록 A = QR . 특히 우리는 찾고있는 Q 이다 (직교 행렬로 Q T Q = QQ T = I를 여기서 I는 곱셈 신원이고 T는 전치 임) 및 R은 상위의 삼각 행렬 (그 대각선 반드시 아래의 모든 값으로 0이어야 함).
합리적인 방법으로 정사각 행렬을 취하고 모든 방법으로 QR 분해를 출력하는 코드를 작성합니다. 많은 행렬에는 여러 개의 QR 분해가 있지만 출력 만 필요합니다.
결과 행렬의 요소는 행렬의 모든 항목에 대한 실제 답의 소수점 이하 두 자리 내에 있어야합니다.
이것은 코드 골프 경쟁이므로 적은 바이트로 더 나은 점수를 얻을 수 있습니다.
테스트 사례
이것들은 가능한 출력 일 뿐이며, 출력이 유효한 한 모든 출력과 일치 할 필요는 없습니다.
0 0 0 1 0 0 0 0 0
0 0 0 -> 0 1 0 0 0 0
0 0 0 0 0 1 , 0 0 0
1 0 0 1 0 0 1 0 0
0 1 0 -> 0 1 0 0 1 0
0 0 1 0 0 1 , 0 0 1
1 2 3 1 0 0 1 2 3
0 3 1 -> 0 1 0 0 3 1
0 0 8 0 0 1 , 0 0 8
0 0 1 0 0 1 1 1 1
0 1 0 -> 0 1 0 0 1 0
1 1 1 1 0 0 , 0 0 1
0 0 0 0 1 0 0 0 0 1 1 0 0 0 1
0 0 0 1 0 0 0 0 1 0 0 1 1 1 0
0 0 1 0 0 -> 0 0 1 0 0 0 0 1 0 0
0 1 1 1 0 0 1 0 0 0 0 0 0 1 0
1 0 0 0 1 1 0 0 0 0 , 0 0 0 0 1