def get_sorted_data_from_matrix(matrix):
data = []
for x in matrix:
for y in x:
data.append(y)
data.sort()
return data
def get_matrix_size(matrix):
height = len(matrix)
width = len(matrix[0])
return height, width
def create_sorted_matrix(data, height, width):
new_matrix = []
for x in range(height):
x_list = []
for y in range(width):
x_list.append(data.pop(0))
new_matrix.append(x_list)
return new_matrix
def matrix_processing(matrix):
data = get_sorted_data_from_matrix(matrix)
height, width = get_matrix_size(matrix)
return create_sorted_matrix(data, height, width)
def print_matrix(matrix):
for x in matrix:
print(x)
a = [[3,2,1],
[4,1,2]]
print_matrix(matrix_processing(a))
ZGVmIGdldF9zb3J0ZWRfZGF0YV9mcm9tX21hdHJpeChtYXRyaXgpOgogICAgZGF0YSA9IFtdCgogICAgZm9yIHggaW4gbWF0cml4OgogICAgICAgIGZvciB5IGluIHg6CiAgICAgICAgICAgIGRhdGEuYXBwZW5kKHkpCiAgICBkYXRhLnNvcnQoKQoKICAgIHJldHVybiBkYXRhCgoKZGVmIGdldF9tYXRyaXhfc2l6ZShtYXRyaXgpOgogICAgaGVpZ2h0ID0gbGVuKG1hdHJpeCkKICAgIHdpZHRoID0gbGVuKG1hdHJpeFswXSkKCiAgICByZXR1cm4gaGVpZ2h0LCB3aWR0aAoKCmRlZiBjcmVhdGVfc29ydGVkX21hdHJpeChkYXRhLCBoZWlnaHQsIHdpZHRoKToKICAgIG5ld19tYXRyaXggPSBbXQogICAgZm9yIHggaW4gcmFuZ2UoaGVpZ2h0KToKICAgICAgICB4X2xpc3QgPSBbXQogICAgICAgIGZvciB5IGluIHJhbmdlKHdpZHRoKToKICAgICAgICAgICAgeF9saXN0LmFwcGVuZChkYXRhLnBvcCgwKSkKICAgICAgICBuZXdfbWF0cml4LmFwcGVuZCh4X2xpc3QpCgogICAgcmV0dXJuIG5ld19tYXRyaXgKCgpkZWYgbWF0cml4X3Byb2Nlc3NpbmcobWF0cml4KToKICAgIGRhdGEgPSBnZXRfc29ydGVkX2RhdGFfZnJvbV9tYXRyaXgobWF0cml4KQogICAgaGVpZ2h0LCB3aWR0aCA9IGdldF9tYXRyaXhfc2l6ZShtYXRyaXgpCiAgICByZXR1cm4gY3JlYXRlX3NvcnRlZF9tYXRyaXgoZGF0YSwgaGVpZ2h0LCB3aWR0aCkKCgpkZWYgcHJpbnRfbWF0cml4KG1hdHJpeCk6CiAgICBmb3IgeCBpbiBtYXRyaXg6CiAgICAgICAgcHJpbnQoeCkKCgphID0gW1szLDIsMV0sCiAgICAgWzQsMSwyXV0KCnByaW50X21hdHJpeChtYXRyaXhfcHJvY2Vzc2luZyhhKSk=