배경
정수 배열의 델타 는 연속 요소의 차이를 가져 와서 형성된 배열입니다. 예를 들어 [1, 2, 4, 7, 3, 9, 6]
델타는 다음과 같습니다 [1, 2, 3, -4, 6, -3]
.
이제 정수 행렬의 델타를 각 행과 포함하는 각 열의 델타로 정의합니다.
예로서:
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]
다음과 같은 행렬 델타 목록을 제공합니다.
[[1, 1, 1], [1, 1, 1], [-6, 7, -6], [3, 3], [3, -4], [3, 2], [3, -5]]
그리고 우리는 그것들이 중첩되는 것을 원하지 않기 때문에 그 목록을 평평하게 만듭니다.
[1, 1, 1, 1, 1, 1, -6, 7, -6, 3, 3, 3, -4, 3, 2, 3, -5]
직무
당신의 임무는 입력으로 주어진 행렬의 모든 델타 를 합하는 것 입니다. 행렬은 음이 아닌 정수로만 구성됩니다.
규칙
모든 표준 규칙이 적용됩니다.
행렬에 각 행과 열에 적어도 두 개의 값이 포함되어 있다고 가정 할 수 있으므로 최소 크기는 2x2 입니다.
매트릭스를 지정하는 한 적절한 형식으로 매트릭스를 사용할 수 있습니다.
당신은 하지 않을 수 있습니다 매트릭스가 정사각형이라고 가정합니다.
당신이 당신의 바이트 수를 줄일 수있는 경우에, 당신은 할 수있다 선택적으로 행 수와 열 수를 입력으로 취할 있습니다 (C를 바라보십시오!).
이것은 코드 골프이므로 각 언어 에서 가장 짧은 코드 (바이트)가 이깁니다!
테스트 사례
입력 => 출력 [[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
ṁ
.