Arka fon
Bir tamsayı dizisinin deltaları birbirini izleyen elemanların farklarını alarak oluşan dizidir. Örneğin, [1, 2, 4, 7, 3, 9, 6]
aşağıdaki deltalar vardır: [1, 2, 3, -4, 6, -3]
.
Şimdi bir tamsayı matrisinin deltalarını her satırın ve içerdiği her sütunun deltası olarak tanımlayacağız.
Örnek olarak:
Row deltas:
1 2 3 4 │ => [1, 1, 1]
4 5 6 7 │ => [1, 1, 1]
7 1 8 2 │ => [-6, 7, -6]
Column deltas (the matrix' columns have been rotated into rows for simplicity):
1 4 7 │ => [3, 3]
2 5 1 │ => [3, -4]
3 6 8 │ => [3, 2]
4 7 2 │ => [3, -5]
Bu bize aşağıdaki matris deltalarının listesini verir:
[[1, 1, 1], [1, 1, 1], [-6, 7, -6], [3, 3], [3, -4], [3, 2], [3, -5]]
Yuvalanmalarını istemediğimiz için bu listeyi düzleştiriyoruz:
[1, 1, 1, 1, 1, 1, -6, 7, -6, 3, 3, 3, -4, 3, 2, 3, -5]
Görev
Göreviniz girdi olarak verilen bir matrisin tüm deltalarını toplamaktır . Matrisin yalnızca negatif olmayan tamsayılardan oluşacağını unutmayın.
kurallar
Tüm standart kurallar geçerlidir.
Matrisin her satır ve sütunda en az iki değer içerdiğini varsayabilirsiniz, böylece minimum boyut 2x2 olacaktır .
Matrisi, belirttiğiniz sürece herhangi bir makul biçimde alabilirsiniz.
Sen olmayabilir matris kare olduğunu varsayalım.
Bayt sayınızı azaltmanıza yardımcı olabilirse, isteğe bağlı olarak satır sayısını ve giriş olarak sütun sayısını da alabilirsiniz (Size bakıyorsunuz C!).
Bu kod golf, bu yüzden her dilde en kısa kod (bayt cinsinden) kazanır!
Test Durumları
Giriş => Çıkış [[1, 2], [1, 2]] => 2 [[8, 7, 1], [4, 1, 3], [5, 5, 5]] => -9 [[1, 2, 3], [4, 5, 6], [7, 8, 9]] => 24 [[9, 9, 9, 9, 9], [9, 9, 9, 9, 9]] => 0 [[1, 3, 14], [56, 89, 20], [99, 99, 99]] => 256 [[1, 2, 3, 4], [4, 5, 6, 7], [7, 1, 8, 2]] => 9 [[13, 19, 478], [0, 12, 4], [45, 3, 6], [1, 2, 3]] => -72
ṁ
.