Вам нужно написать программу, которая содержит только требуемую функцию (можно несколько функций, если одна функция будет вызывать другую). Программа не должна содержать никакого кода вне функций.
В тестирующей системе после вашей программы будет добавлен следующий код, после чего решение будет проверено на тестах.
n, m = map(int, input().split())
source_list = [list(map(int, input().split())) for i in range(n)]
source_i, source_j = map(int, input().split())
source_list_copy = copy.copy(source_list)
del n
del m
res = swap_columns(source_list, source_i, source_j)
if len(source_list) != len(source_list_copy):
print("Функция изменила длину внешнего списка")
sys.exit(0)
for i in range(len(source_list)):
if source_list[i] is not source_list_copy[i]:
print("Функция изменила ссылки на вложенные списки")
sys.exit(0)
if res is not None:
print("Функция не должна возвращать результат")
sys.exit(0)
for row in source_list:
print(" ".join(map(str, row)))
n = int(input())
source_list = [list(map(int, input().split())) for i in range(n)]
source_list_copy = copy.copy(source_list)
source_list_deep_copy = copy.deepcopy(source_list)
del n
res = is_symmetric(source_list)
if len(source_list) != len(source_list_copy):
print("Функция изменила длину внешнего списка")
sys.exit(0)
for i in range(len(source_list)):
if source_list[i] is not source_list_copy[i]:
print("Функция изменила ссылки на вложенные списки")
sys.exit(0)
if source_list != source_list_deep_copy:
print("Функция изменила содержимое переданного списка")
sys.exit(0)
if res is True:
print("YES")
elif res is False:
print("NO")
else:
print("Функция должна возвращать значение типа bool")
n = int(input())
source_list = [list(map(int, input().split())) for i in range(n)]
source_k = int(input())
source_list_copy = copy.copy(source_list)
source_list_deep_copy = copy.deepcopy(source_list)
del n
res = kth_diagonal(source_list, source_k)
if len(source_list) != len(source_list_copy):
print("Функция изменила длину внешнего списка")
sys.exit(0)
for i in range(len(source_list)):
if source_list[i] is not source_list_copy[i]:
print("Функция изменила ссылки на вложенные списки")
sys.exit(0)
if source_list != source_list_deep_copy:
print("Функция изменила содержимое переданного списка")
sys.exit(0)
if type(res) is not list:
print("Функция должна возвращать список")
sys.exit(0)
for elem in res:
if type(elem) is not int:
print("Функция дожна возвращать список, элементы которого имеют тип int")
sys.exit(0)
print(*res)
n, m = map(int, input().split())
source_list = [list(map(int, input().split())) for i in range(n)]
source_list_copy = copy.copy(source_list)
source_list_deep_copy = copy.deepcopy(source_list)
del n
del m
res = transpose(source_list)
if len(source_list) != len(source_list_copy):
print("Функция изменила длину внешнего списка")
sys.exit(0)
for i in range(len(source_list)):
if source_list[i] is not source_list_copy[i]:
print("Функция изменила ссылки на вложенные списки")
sys.exit(0)
if source_list != source_list_deep_copy:
print("Функция изменила содержимое переданного списка")
sys.exit(0)
if type(res) is not list:
print("Функция должна возвращать список")
sys.exit(0)
if len(res) != len(source_list[0]):
print("Функция должна возвращать список длины m =", len(source_list[0]))
sys.exit(0)
for row in res:
if type(row) is not list:
print("Функция дожна возвращать список, элементы которого являются списком")
sys.exit(0)
if len(row) != len(source_list):
print("Функция должна возвращать список, элементы которого являются списком длины n = ", len(source_list))
sys.exit(0)
for elem in row:
if type(elem) is not int:
print("Функция должна возвращать список, элементы которого являются списками элементов типа int")
sys.exit(0)
for row in res:
print(*row)
n = int(input())
source_list = [list(map(int, input().split())) for i in range(n)]
source_list_copy = copy.copy(source_list)
source_list_deep_copy = copy.deepcopy(source_list)
del n
res = transpose(source_list)
if res is not None:
print("Функция не должна возвращать значение")
sys.exit(0)
if len(source_list) != len(source_list_copy):
print("Функция изменила длину внешнего списка")
sys.exit(0)
for i in range(len(source_list)):
if source_list[i] is not source_list_copy[i]:
print("Функция изменила ссылки на вложенные списки")
sys.exit(0)
for elem in source_list[i]:
if type(elem) is not int:
print("Изменился тип элементов вложенных списков")
sys.exit(0)
for row in source_list:
print(*row)
n = int(input())
source_list = [list(map(int, input().split())) for i in range(n)]
source_list_copy = copy.copy(source_list)
source_list_deep_copy = copy.deepcopy(source_list)
del n
res = swap_diagonals(source_list)
if res is not None:
print("Функция не должна возвращать значение")
sys.exit(0)
if len(source_list) != len(source_list_copy):
print("Функция изменила длину внешнего списка")
sys.exit(0)
for i in range(len(source_list)):
if source_list[i] is not source_list_copy[i]:
print("Функция изменила ссылки на вложенные списки")
sys.exit(0)
for elem in source_list[i]:
if type(elem) is not int:
print("Изменился тип элементов вложенных списков")
sys.exit(0)
for row in source_list:
print(*row)
source_n = int(input())
source_list = input().split()
source_list_copy = copy.copy(source_list)
res = to_2d(source_list, source_n)
if source_list != source_list_copy:
print("Функция изменила переданный список")
sys.exit(0)
if type(res) is not list:
print("Функция должна вернуть список")
print("Функция вернула: ", res)
sys.exit(0)
for i in range(len(res)):
if i < len(res) - 1 and len(res[i]) != source_n:
print("Строка с индексом", i, "содержит неверное число элементов")
print("Функция вернула: ", res)
sys.exit(0)
if i == len(res) - 1 and (len(res[i]) == 0 or len(res[i]) > source_n):
print("Строка с индексом", i, "содержит неверное число элементов")
print("Функция вернула: ", res)
sys.exit(0)
print("\n".join(map(lambda row: " ".join(row), res)))
n, m = map(int, input().split())
source_list = [list(map(int, input().split())) for i in range(n)]
source_list_copy = copy.copy(source_list)
source_list_deep_copy = copy.deepcopy(source_list)
del n
del m
res = rotate(source_list)
if len(source_list) != len(source_list_copy):
print("Функция изменила длину внешнего списка")
sys.exit(0)
for i in range(len(source_list)):
if source_list[i] is not source_list_copy[i]:
print("Функция изменила ссылки на вложенные списки")
sys.exit(0)
if source_list != source_list_deep_copy:
print("Функция изменила содержимое переданного списка")
sys.exit(0)
if type(res) is not list:
print("Функция должна возвращать список")
sys.exit(0)
if len(res) != len(source_list[0]):
print("Функция должна возвращать список длины m =", len(source_list[0]))
sys.exit(0)
for row in res:
if type(row) is not list:
print("Функция дожна возвращать список, элементы которого являются списком")
sys.exit(0)
if len(row) != len(source_list):
print("Функция должна возвращать список, элементы которого являются списком длины n = ", len(source_list))
sys.exit(0)
for elem in row:
if type(elem) is not int:
print("Функция должна возвращать список, элементы которого являются списками элементов типа int")
sys.exit(0)
for row in res:
print(*row)
n = int(input())
source_list = [list(map(int, input().split())) for i in range(n)]
source_list_copy = copy.copy(source_list)
del n
res = rotate(source_list)
if len(source_list) != len(source_list_copy):
print("Функция изменила длину внешнего списка")
sys.exit(0)
for i in range(len(source_list)):
if source_list[i] is not source_list_copy[i]:
print("Функция изменила ссылки на вложенные списки")
sys.exit(0)
if res is not None:
print("Функция не должна возвращать значение")
sys.exit(0)
for row in source_list:
print(*row)
def check(a):
if type(a) is int:
return
if type(a) is not list:
print("Один из внутренних списков имеет тип отличный от int и list")
sys.exit(0)
for i in range(len(a)):
if type(a[i]) is list:
for j in range(i):
if a[i] is a[j]:
print("Среди вложенных списков есть ссылки на один и тот же список")
sys.exit(0)
for elem in a:
check(elem)
def set0(a):
if type(a[0]) is int:
a[0] = 1
else:
set0(a[0])
def rec_sum(a):
if type(a) is int:
return a
else:
s = 0
for elem in a:
s += rec_sum(elem)
return s
a = gen_x(int(input()))
if type(a) is not list:
print("Функция должна возвращать список")
sys.exit(0)
check(a)
print(a)
set0(a)
if rec_sum(a) != 1:
print("После модификации одного элемента списка, в списке изменилось много элементов")
print("Состояние списка после изменения:")
print(a)
a = gen_y(int(input()))
if type(a) is not list:
print("Функция должна возвращать список")
sys.exit(0)
print(a)
a = gen_z(list(map(int, input().split())))
if type(a) is not list:
print("Функция должна возвращать список")
sys.exit(0)
print(a)