90일차 - Matrix Expansion
8536 단어 Algorithm DiaryAlgorithm Diary
--------------------------------------------Failed My Solution -----------------------------------------
new = [[0 for col in range(matrix.__len__() + n)] for row in range(matrix.__len__() + n)]
print(new)
for i in range(0, matrix.__len__() + n):
if i < matrix.__len__():
for j in range(0, matrix[i].__len__() + n):
if j < matrix.__len__():
new[i][j] = matrix[i][j]
else:
new[i][j] = sum(new[i][0:j])
else:
for j in range(0, matrix.__len__() + n):
print(i, j)
-------------------------------------------- Other's Solution -----------------------------------------
import numpy as np
def expansion(matrix, n):
a = np.array(matrix)
while n > 0:
a = np.append(a, [np.sum(a, axis=0)], axis=0) # Append row
col = np.array([np.sum(a, axis=1)]) # Calculate column
a = np.concatenate((a, col.T), axis=1) # Concatenate column
a[-1][-1] = np.trace(a) - a[-1][-1] # Correct last diagonal element
n -= 1
return a.tolist()
Author And Source
이 문제에 관하여(90일차 - Matrix Expansion), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@vivala0519/90일차-저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)