Для решения задачи необходимо найти четырёхзначные числа вида (ABCD), которые при умножении на последнюю цифру (D) дают четырёхзначное число, у которого первая и последняя цифры поменялись местами. Запишем это в виде уравнения:
[
ABCD \times D = DAYS
]
Где:
- (A) — первая цифра (не может быть равна 0),
- (B) и (C) — вторая и третья цифры,
- (D) — последняя цифра,
- (DAYS) также является четырёхзначным числом.
Запишем число (ABCD) как:
[
ABCD = 1000A + 100B + 10C + D
]
Поменяв местами первую и последнюю цифры, получим:
[
DAYS = 1000D + 10A + B
]
Подставим это в уравнение:
[
(1000A + 100B + 10C + D) \times D = 1000D + 10A + B
]
Раскроем скобки:
[
1000AD + 100BD + 10CD + D^2 = 1000D + 10A + B
]
Переносим все элементы в левую часть:
[
1000AD + 100BD + 10CD + D^2 - 1000D - 10A - B = 0
]
Это уравнение является многочленом и его решение может быть полным перебором подходящих значений для (A), (B), (C) и (D).
Теперь, чтобы найти все такие числа, можем использовать перебор. Основные ограничения для (A), (B), (C) и (D):
- (A) может принимать значения от 1 до 9 (так как число четырёхзначное).
- (B) и (C) могут принимать значения от 0 до 9.
- (D) может принимать значения от 1 до 9, так как оно должно быть последней цифрой.
Далее, нам нужно проверить для каждого из чисел, удовлетворяет ли оно полученному уравнению.
Напишем алгоритм:
- Перебрать все возможные значения для (A), (B), (C), (D):
- Посчитать (ABCD \times D) и посмотреть, равно ли это (DAYS).
- Проверить, что первая и последняя цифра действительно поменялись местами.
Примерный код на Python (или любой другой язык) может выглядеть вот так:
count = 0
for A in range(1, 10):
for B in range(0, 10):
for C in range(0, 10):
for D in range(1, 10):
ABCD = 1000 * A + 100 * B + 10 * C + D
DAYS = ABCD * D
if 1000 <= DAYS < 10000:
new_A = DAYS // 1000 # первая цифра DAYS
new_D = DAYS % 10 # последняя цифра DAYS
if new_A == D and new_D == A:
count += 1
print(count)
Также чтобы исключить числа, которые не являются четырёхзначными, задаем проверку на диапазон (1000 \leq DAYS < 10000).
В результате выполнения программы мы получим количество четырёхзначных чисел, которые удовлетворяют заданному условию.