숫자 [ a 1 a 2 ... a n ] 의리스트 가 주어 지면 , Aᵢ 가 다음과 같이 정의 되는 모든 행렬 Aᵢ 의 합을 계산하십시오 ( m 은 모든 aᵢ 의 최대 값입니다 ) :
1 2 ⋯ (i-1) i (i+1) ⋯ n
+----------------------------
1 | 0 0 ⋯ 0 aᵢ aᵢ ⋯ aᵢ
2 | 0 0 ⋯ 0 aᵢ aᵢ ⋯ aᵢ
. . . . . . . .
. . . . . . . .
aᵢ | 0 0 ⋯ 0 aᵢ aᵢ ⋯ aᵢ
aᵢ₊₁ | 0 0 ⋯ 0 0 0 ⋯ 0
. . . . . . . .
. . . . . . . .
m | 0 0 ⋯ 0 0 0 ⋯ 0
예
입력이 주어지면 [2,1,3,1]
다음 행렬을 구성합니다.
[2 2 2 2] [0 1 1 1] [0 0 3 3] [0 0 0 1] [2 3 6 7]
[2 2 2 2] + [0 0 0 0] + [0 0 3 3] + [0 0 0 0] = [2 2 5 5]
[0 0 0 0] [0 0 0 0] [0 0 3 3] [0 0 0 0] [0 0 3 3]
규칙 및 I / O
- 입력이 비어 있지 않은 것으로 가정 할 수 있습니다
- 모든 입력이 음이 아닌 것으로 가정 할 수 있습니다 (0≤)
- 입력은 1xn (또는 nx1) 행렬, 목록, 배열 등이 될 수 있습니다.
- 마찬가지로 출력은 행렬, 목록 목록, 배열 등이 될 수 있습니다.
- 기본 I / O 형식을 통해 입력을 가져오고 반환 할 수 있습니다.
- 귀하의 제출물은 전체 프로그램 또는 기능 일 수 있습니다
테스트 사례
[0] -> [] or [[]]
[1] -> [[1]]
[3] -> [[3],[3],[3]]
[2,2] -> [[2,4],[2,4]]
[3,0,0] -> [[3,3,3],[3,3,3],[3,3,3]]
[1,2,3,4,5] -> [[1,3,6,10,15],[0,2,5,9,14],[0,0,3,7,12],[0,0,0,4,9],[0,0,0,0,5]]
[10,1,0,3,7,8] -> [[10,11,11,14,21,29],[10,10,10,13,20,28],[10,10,10,13,20,28],[10,10,10,10,17,25],[10,10,10,10,17,25],[10,10,10,10,17,25],[10,10,10,10,17,25],[10,10,10,10,10,18],[10,10,10,10,10,10],[10,10,10,10,10,10]]