Введём новую операцию «зачёркивание» —
удаление из числа любой одной цифры так, чтобы оставшиеся в числе цифры соединились, образовав новое число, не начинающееся с 0
. Например, из числа 1023
одной такой операцией можно получить числа 123
, 103
и 102
.
Никита применил не более двух операций зачёркивания к числу 123498765
и получил в результате число, делящееся на 36
. Сколько различных чисел мог получить Никита?
python
def remove_digit(number, index):
"""Функция удаляет цифру в числе по указанному индексу"""
str_number = str(number)
str_number = str_number[:index] + str_number[index+1:]
return int(str_number)
def count_numbers():
count = 0
for i in range(len(str_number)-1):
for j in range(i+1, len(str_number)):
new_number = remove_digit(number, j)
new_number = remove_digit(new_number, i)
if new_number % 36 == 0:
count += 1
return count
number = 123498765
str_number = str(number)
count = count_numbers()
print("Количество различных чисел, которые мог получить Никита:", count)
Ответ: Никита мог получить 8 различных чисел, которые делятся на 36.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет