Давайте решим задачу последовательно.
Пусть исходные числа равны a и b.
Согласно алгоритму шифрования, зашифрованная пара чисел будет иметь вид:
шифр(a,b) = ( (a + b) % m, (a * b) % m )
Для пары чисел, полученных после уменьшения второго числа на единицу, будет выполняться:
шифр(a, b-1) = ( (a + (b-1)) % m, (a * (b-1)) % m )
Известно, что шифр новой пары отличается от шифра прежней перестановкой чисел. То есть:
шифр(a,b) ≠ шифр(a, b-1)
Запишем расшифрованное выражение для каждой из пар чисел:
(a + b) % m ≠ (a + (b-1)) % m
(a * b) % m ≠ (a * (b-1)) % m
Раскроем остаток от деления:
(a + b) ≠ (a + (b-1)) (1)
(a * b) ≠ (a * (b-1)) (2)
Уравнение (1) может быть преобразовано:
a + b ≠ a + b - 1
b ≠ b - 1
1 ≠ 0
Уравнение (2) может быть преобразовано:
a * b ≠ a * b - a
a * b ≠ a * (b - 1)
Таким образом, из уравнений (1) и (2) получаем, что a и b должны быть неразличимыми числами.
Значит, a ≠ b.
Мы знаем, что числа a и b лежат в промежутке [2, m-1]. Так как a ≠ b, то их разность должна быть больше либо равна 1.
Давайте выберем числа a и a+1 и проверим, выполняются ли условия задачи.
Для пары чисел (a, a+1):
шифр(a, a+1) = ( (a + (a+1)) % m, (a * (a+1)) % m )
Если мы изменяем второе число и получаем пару (a, a), то шифр новой пары будет:
шифр(a, a) = ( (a + a) % m, (a * a) % m )
Нам нужно, чтобы шифры двух пар чисел были различные:
шифр(a, a+1) ≠ шифр(a, a)
( (a + (a+1)) % m, (a * (a+1)) % m ) ≠ ( (a + a) % m, (a * a) % m )
( (2a + 1) % m, (a * (a+1)) % m ) ≠ ( (2a) % m, (a * a) % m )
Так как у нас нет возможности получить остаток от деления на число m, равный 1, упростим уравнение:
( (2a) % m, (a * (a+1)) % m ) ≠ ( (2a) % m, (a * a) % m )
Видим, что остатки от деления частей шифров различаются только при a = 0.
Значит, числа a и a+1 не подходят для решения задачи.
У нас есть один единственный вариант чисел: a = 1, b = 2.
шифр(1, 2) = ( (1 + 2) % m, (1 * 2) % m ) = (3 % 5700000.0, 2 % 5700000.0 ) = (3, 2)
Если мы уменьшаем второе число на единицу, то получаем пару (1, 1).
шифр(1, 1) = ( (1 + 1) % m, (1 * 1) % m ) = (2 % 5700000.0, 1 % 5700000.0 ) = (2, 1)
Таким образом, числа, которые изначально выбрал Саша, равны 12.
Ответ: 12.