Вам нужно написать программу, которая содержит только требуемую функцию (можно несколько функций, если одна функция будет вызывать другую). Программа не должна содержать никакого кода вне функций.
В тестирующей системе после вашей программы будет добавлен следующий код, после чего решение будет проверено на тестах.
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)
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)
a = eval(input())
a_copy = a[:]
res = merge_sort(a)
if a != a_copy:
print("Фунция не должна модифицировать передаваемые параметры")
if type(res) != list:
print("Функция должна возвращать список")
else:
print(res)
class Integer:
count = 0
def __init__(self, s=0):
self.__data = int(s)
def __lt__(self, other):
Integer.count += 1
return self.__data < other.__data
def __eq__(self, other):
return self.__data == other.__data
def __str__(self):
return str(self.__data)
def __repr__(self):
return str(self.__data)
src = [Integer(i) for i in range(1, 5)]
for perm in itertools.permutations(src):
perm = list(perm)
Integer.count = 0
perm_sorted = perm[:]
sort4(perm_sorted)
if perm_sorted != src:
print("Сортировка работает неправильно")
print("Исходный список:", perm)
print("Список после сортировки:", perm_sorted)
break
if Integer.count > 5:
print("Выполнено слишком много сравнений:", Integer.count)
print("Исходный список:", perm)
break
else:
print("OK")
class Integer:
count = 0
def __init__(self, s=0):
self.__data = int(s)
def __lt__(self, other):
Integer.count += 1
return self.__data < other.__data
def __eq__(self, other):
return self.__data == other.__data
def __str__(self):
return str(self.__data)
def __repr__(self):
return str(self.__data)
src = [Integer(i) for i in range(1, 6)]
for perm in itertools.permutations(src):
perm = list(perm)
Integer.count = 0
perm_sorted = perm[:]
sort5(perm_sorted)
if perm_sorted != src:
print("Сортировка работает неправильно")
print("Исходный список:", perm)
print("Список после сортировки:", perm_sorted)
break
if Integer.count > 7:
print("Выполнено слишком много сравнений:", Integer.count)
print("Исходный список:", perm)
break
else:
print("OK")