# Name : Ananda Das;
# ID : 230241053;
# Lab : 3 , Problem : 01;
n = int(input("Enter the order of square matrix: "))
a = []
print("Enter the elements of augmented matrix row-wise:")
for i in range(n):
row = list(map(float, input().split()))
a.append(row)
for j in range(n):
max_row = j
for i in range(j + 1, n):
if abs(a[i][j]) > abs(a[max_row][j]):
max_row = i
a[j], a[max_row] = a[max_row], a[j]
if abs(a[j][j]) < 1e-10:
print("\nThe system has no unique solution (singular matrix).")
exit()
for i in range(j + 1, n):
ratio = a[i][j] / a[j][j]
for k in range(j, n + 1):
a[i][k] -= ratio * a[j][k]
x = [0] * n
for i in range(n - 1, -1, -1):
x[i] = a[i][n]
for j in range(i + 1, n):
x[i] -= a[i][j] * x[j]
x[i] /= a[i][i]
print("\nThe solution is:")
for i in range(n):
print(f"x{i+1} = {x[i]:.6f}")
IyBOYW1lIDogQW5hbmRhIERhczsKIyBJRCA6IDIzMDI0MTA1MzsKIyBMYWIgOiAzICwgUHJvYmxlbSA6IDAxOwogCm4gPSBpbnQoaW5wdXQoIkVudGVyIHRoZSBvcmRlciBvZiBzcXVhcmUgbWF0cml4OiAiKSkKIAphID0gW10KcHJpbnQoIkVudGVyIHRoZSBlbGVtZW50cyBvZiBhdWdtZW50ZWQgbWF0cml4IHJvdy13aXNlOiIpCmZvciBpIGluIHJhbmdlKG4pOgogICAgcm93ID0gbGlzdChtYXAoZmxvYXQsIGlucHV0KCkuc3BsaXQoKSkpCiAgICBhLmFwcGVuZChyb3cpCiAKZm9yIGogaW4gcmFuZ2Uobik6CiAKICAgIG1heF9yb3cgPSBqCiAgICBmb3IgaSBpbiByYW5nZShqICsgMSwgbik6CiAgICAgICAgaWYgYWJzKGFbaV1bal0pID4gYWJzKGFbbWF4X3Jvd11bal0pOgogICAgICAgICAgICBtYXhfcm93ID0gaQogCiAKICAgIGFbal0sIGFbbWF4X3Jvd10gPSBhW21heF9yb3ddLCBhW2pdCiAKIAogICAgaWYgYWJzKGFbal1bal0pIDwgMWUtMTA6CiAgICAgICAgcHJpbnQoIlxuVGhlIHN5c3RlbSBoYXMgbm8gdW5pcXVlIHNvbHV0aW9uIChzaW5ndWxhciBtYXRyaXgpLiIpCiAgICAgICAgZXhpdCgpCiAKICAgIGZvciBpIGluIHJhbmdlKGogKyAxLCBuKToKICAgICAgICByYXRpbyA9IGFbaV1bal0gLyBhW2pdW2pdCiAgICAgICAgZm9yIGsgaW4gcmFuZ2UoaiwgbiArIDEpOgogICAgICAgICAgICBhW2ldW2tdIC09IHJhdGlvICogYVtqXVtrXQogCiAKeCA9IFswXSAqIG4KZm9yIGkgaW4gcmFuZ2UobiAtIDEsIC0xLCAtMSk6CiAgICB4W2ldID0gYVtpXVtuXQogICAgZm9yIGogaW4gcmFuZ2UoaSArIDEsIG4pOgogICAgICAgIHhbaV0gLT0gYVtpXVtqXSAqIHhbal0KICAgIHhbaV0gLz0gYVtpXVtpXQogCiAKcHJpbnQoIlxuVGhlIHNvbHV0aW9uIGlzOiIpCmZvciBpIGluIHJhbmdlKG4pOgogICAgcHJpbnQoZiJ4e2krMX0gPSB7eFtpXTouNmZ9Iik=