10-задание выполнено
This commit is contained in:
@@ -1 +1,25 @@
|
||||
# TODO здесь писать код
|
||||
count_people = int(input('Кол-во человек: '))
|
||||
peoples = list(range(1, count_people + 1))
|
||||
|
||||
count_number = int(input('Какое число в считалке? '))
|
||||
print(f'Значит, выбывает каждый {count_number}-й человек\n')
|
||||
|
||||
# Скорее всего не оптимальное решение.
|
||||
# Решал чисто "интуитивно", с помощью дебага и "экспериментов" с вычислениями
|
||||
leave = 0
|
||||
while len(peoples) > 1:
|
||||
print('Текущий круг людей:', peoples)
|
||||
print('Начало счёта с номера', peoples[leave])
|
||||
leave = (leave + count_number) % len(peoples)
|
||||
if leave == 0:
|
||||
leave = len(peoples) - 1
|
||||
else:
|
||||
leave -= 1
|
||||
print('Выбывает человек под номером', peoples[leave])
|
||||
print()
|
||||
peoples.remove(peoples[leave])
|
||||
if leave >= len(peoples):
|
||||
leave %= len(peoples)
|
||||
|
||||
print('Остался человек под номером', peoples[0])
|
||||
Reference in New Issue
Block a user