【Codewars-行列式を求める】python
1447 ワード
【題目】与えられた行列の行列式を求める【解】
def det(m):
if len(m) <= 0:
return None
if len(m) == 1:
return m[0][0]
else:
s = 0
for i in range(len(m)):
n = [[row[a] for a in range(len(m)) if a != i] for row in m[1:]]
if i % 2 == 0:
s += m[0][i] * det(n)
else:
s -= m[0][i] * det(n)
return s