Вы пишете программу для маленького табло, в котором циклически повторяется один и тот же текст или числа. Прямо как в каком-нибудь метро, автобусах или трамваях.
Дан список из N элементов и целое число K. Напишите программу, которая циклически сдвигает элементы списка вправо на K позиций. Используйте минимально возможное количество операций присваивания.
Пример 1:
Сдвиг: 1
Изначальный список: [1, 2, 3, 4, 5]
Сдвинутый список: [5, 1, 2, 3, 4]
Пример 2:
Сдвиг: 3
Изначальный список: [1, 4, -3, 0, 10]
Сдвинутый список: [-3, 0, 10, 1, 4]
Решение:
def main():
task = []
number = int(input('Сколько будет задач: '))
for i in range(number):
task_id = int(input('Введите номер задачи: '))
task.append(task_id)
print('Изначальный список:', task)
shift = int(input('Сдвиг: '))
task = task[-shift:] + task[:-shift]
print('Сдвинутый список:', task)
if __name__ == '__main__':
main()
35200login-checkЗадача 8. Бегущие цифры
