(matA: list, matB: list)
return matC
Multiplies two square matrices matA and matB od size n x n
    Time Complexity: O(n^3)
Multiplies two square matrices matA and matB od size n x n
    Time Complexity: O(n^3)
Multiplies two square matrices matA and matB od size n x n Time Complexity : O ( n^3 )
def multiply(matA: list, matB: list) -> list:
    """
    Multiplies two square matrices matA and matB od size n x n
    Time Complexity: O(n^3)
    """
    n = len(matA)
    matC = [[0 for i in range(n)] for j in range(n)]

    for i in range(n):
        for j in range(n):
            for k in range(n):
                matC[i][j] += matA[i][k] * matB[k][j]

    return matC
def multiply ( matA : list , matB : list ) -> list : n = len ( matA ) matC = [ [ 0 for i in range ( n ) ] for j in range ( n ) ] for i in range ( n ) : for j in range ( n ) : for k in range ( n ) : matC [ i ] [ j ] += matA [ i ] [ k ] * matB [ k ] [ j ] return matC