Домашняя работа целиком выполнена

This commit is contained in:
Neuf
2025-09-16 00:50:16 +05:00
parent 54ced685d7
commit f3c81fda32

View File

@@ -1 +1,49 @@
# TODO здесь писать код
# По примерам, я так понял, что, пользователь не вводит цифру 0
# Решил немного смухлевать
def check_numbers(collection):
temp = [] # Из-за того что родительский список тоже менялся,
temp.extend(collection) # пришлось городить такой способ
length = len(temp)
diff = length // 2
remain = length % 2
for i in range(diff):
index_left = (diff - i) - 1
index_right = (diff + i) + remain
if temp[index_right] == 0:
continue
if temp[index_left] != temp[index_right]:
return False
else:
return True
def rebuild(collection, number):
for i_number in range(number, 0, -1):
collection.append(collection[i_number-1])
def count_changes(collection):
number = 0
temp_collection = [] # Из-за того что родительский список тоже менялся,
temp_collection.extend(collection) # пришлось городить такой способ
while not check_numbers(temp_collection):
temp_collection.append(0)
number += 1
return number
numbers_list = []
numbers = int(input('Кол-во чисел: '))
for i in range(numbers):
numbers_list.append(int(input('Число: ')))
print()
print('Последовательность:',numbers_list)
step_count = count_changes(numbers_list)
rebuild(numbers_list, step_count) # Даже без return родительский список все равно меняется :-\
# print(numbers)
if step_count != 0:
print('Нужно приписать чисел:', step_count)
print('Сами числа: [', end='')
for i_num in range(len(numbers_list) - step_count, len(numbers_list) -1):
print(numbers_list[i_num],end=', ')
else:
print(f'{numbers_list[len(numbers_list) -1]}]')