def matrix_multiply_naive(A: list[list[int]], B: list[list[int]]) -> list[list[int]]:
n = len(A)
C = [[0] * n for _ in range(n)]
for i in range(n):
for j in range(n):
for k in range(n):
C[i][j] += A[i][k] * B[k][j]
return C
if __name__ == "__main__":
A = [[1, 2], [3, 4]]
B = [[5, 6], [7, 8]]
print(matrix_multiply_naive(A, B))
# [[19, 22], [43, 50]]
def matrix_multiply_naive(A: list[list[int]], B: list[list[int]]) -> list[list[int]]:
n = len(A)
C = [[0] * n for _ in range(n)]
for i in range(n):
for j in range(n):
for k in range(n):
C[i][j] += A[i][k] * B[k][j]
return C
if __name__ == "__main__":
A = [[1, 2], [3, 4]]
B = [[5, 6], [7, 8]]
print(matrix_multiply_naive(A, B))
# [[19, 22], [43, 50]]