Введём новую операцию «зачёркивание» —
удаление из числа любой одной цифры так, чтобы оставшиеся в числе цифры соединились, образовав новое число, не начинающееся с 0
. Например, из числа 1023
одной такой операцией можно получить числа 123
, 103
и 102
.
Никита применил не более двух операций зачёркивания к числу 123498765
и получил в результате число, делящееся на 36
. Сколько различных чисел мог получить Никита?
python
def check_divisibility(num):
return int(num) % 36 == 0
def count_numbers():
count = 0
for i in range(1, 10):
if check_divisibility('123498765'.replace(str(i), '')):
count += 1
for i in range(1, 10):
for j in range(i+1, 10):
if check_divisibility('123498765'.replace(str(i), '').replace(str(j), '')):
count += 1
return count
result = count_numbers()
print(result)
Результат выполнения программы равен количеству различных чисел, которые может получить Никита при условии, что он применяет не более двух операций зачеркивания к числу 123498765 и результат числа должен делиться на 36 без остатка.
В данном случае программа выводит количество различных чисел, а не сами числа. Если требуется вывести сами числа, которые Никита может получить, то в программе необходимо изменить логику и хранить получаемые числа в списке, а затем вывести этот список.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет