Bu meydan okumada sizden bir kare matrisin QR ayrışmasını bulmanızı isteyeceğim. Matris QR ayrışma A iki matrisler olan S ve R, öyle ki , A = QR . Özellikle de aradığınız Q (bir ortogonal matris olması S , T , Q = QQ T = I burada I çarpımsal kimlik ve T devrik olduğu) ve R, bir üst üçgen matrisi (diagonal zorunluluk altındaki her bir değer olduğu sıfır).
Herhangi bir makul yöntemle bir kare matrisi alan ve herhangi bir yöntemle bir QR ayrışımı sağlayan bir kod yazacaksınız. Birçok matrisin birden fazla QR ayrışımı vardır, ancak yalnızca bir çıkışa ihtiyacınız vardır.
Ortaya çıkan matrislerin elemanları, matristeki her giriş için gerçek bir cevabın iki ondalık basamağı içinde olmalıdır.
Bu bir kod golf yarışmasıdır, bu nedenle cevaplar daha az bayt daha iyi bir puan olmak üzere bayt cinsinden puanlanır.
Test Durumları
Bunlar sadece olası çıktılardır, çıktılarınızın geçerli olduğu sürece bunların hepsiyle eşleşmesi gerekmez.
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