Как тестируются задачи

Вам нужно написать программу, которая содержит только требуемую функцию (можно несколько функций, если одна функция будет вызывать другую). Программа не должна содержать никакого кода вне функций.

В тестирующей системе после вашей программы будет добавлен следующий код, после чего решение будет проверено на тестах.

Задание A

a = eval(input())
a_copy = a[:]
b = eval(input())
b_copy = b[:]
res = merge(a, b)
if a != a_copy or b != b_copy:
    print("Фунция не должна модифицировать передаваемые параметры")
if type(res) != list:
    print("Функция должна возвращать список")
else:
    print(res)

Задание B

a = eval(input())
a_copy = a[:]
b = eval(input())
b_copy = b[:]
res = intersection(a, b)
if a != a_copy or b != b_copy:
    print("Фунция не должна модифицировать передаваемые параметры")
if type(res) != list:
    print("Функция должна возвращать список")
else:
    print(res)

Задание C

a = eval(input())
a_copy = a[:]
res = merge_sort(a)
if a != a_copy:
    print("Фунция не должна модифицировать передаваемые параметры")
if type(res) != list:
    print("Функция должна возвращать список")
else:
    print(res)