Trong thử thách này, tôi sẽ yêu cầu bạn tìm phân tách QR của ma trận vuông. Phân rã QR của ma trận A là hai ma trận Q và R sao cho A = QR . Cụ thể, chúng tôi đang tìm kiếm Q là một ma trận trực giao (đó là Q T Q = QQ T = I trong đó tôi là danh tính nhân và T là hoán vị) và R là ma trận tam giác trên (mọi giá trị dưới đường chéo của nó phải bằng không).
Bạn sẽ viết mã lấy ma trận vuông bằng bất kỳ phương thức hợp lý nào và đưa ra phân tách QR theo bất kỳ phương thức nào. Nhiều ma trận có nhiều phân tách QR tuy nhiên bạn chỉ cần một đầu ra.
Các yếu tố của ma trận kết quả của bạn phải nằm trong hai vị trí thập phân của câu trả lời thực tế cho mỗi mục trong ma trận.
Đây là một cuộc thi đánh gôn, vì vậy các câu trả lời sẽ được tính bằng byte với ít byte hơn là điểm cao hơn.
Các trường hợp thử nghiệm
Đây chỉ là những đầu ra có thể, đầu ra của bạn không cần phải khớp với tất cả những thứ này miễn là chúng hợp lệ.
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