Простыми преобразованиями эту задачу не решить, будем использовать арифметику остатков.
1-ое свойство, которое понадобится
То есть мы спокойно можем заменить каждое слагаемое сравнимым с ним по модулю m. То есть каждое слагаемое в нашей сумме будем рассматривать отдельно.
2-ое свойство, которое нам понадобится:
То есть довольно аналогичная вещь в произведении
На нашем примере все увидим
Находим остатки по модулю 31
Рассматриваем первое слагаемое. Просто двойка не годится, нам нужно найти ближайшее к 31 число, превосходящее его (иногда там в отрицательные числа залезаем, например, , но сейчас это не нужно), нам повезло, это 32
Учитываем, что , получаем
То есть остаток от деления первого слагаемое на 31 получился равным 10. Прекрасно, аналогично со вторым
Остаток 21, чудесно. Выполняем последний шаг.
То есть остаток от деления исходного числа на 31 равен 0, следовательно, исходное число делится на 31, что и требовалось доказать.
Программа на Руби
for n in -10000..10000
for k in 0..1000
p [n,k] if 10*n + 5 == k*k
end
end
Вывод
[2, 5]
[22, 15]
[62, 25]
[122, 35]
[202, 45]
[302, 55]
[422, 65]
[562, 75]
[722, 85]
[902, 95]
[1102, 105]
[1322, 115]
[1562, 125]
[1822, 135]
[2102, 145]
[2402, 155]
[2722, 165]
[3062, 175]
[3422, 185]
[3802, 195]
[4202, 205]
[4622, 215]
[5062, 225]
[5522, 235]
[6002, 245]
[6502, 255]
[7022, 265]
[7562, 275]
[8122, 285]
[8702, 295]
[9302, 305]
[9922, 315]
т.е. подразумевается что есть и другие решения, если расширять диапазон
Простыми преобразованиями эту задачу не решить, будем использовать арифметику остатков.
1-ое свойство, которое понадобится
То есть мы спокойно можем заменить каждое слагаемое сравнимым с ним по модулю m. То есть каждое слагаемое в нашей сумме будем рассматривать отдельно.
2-ое свойство, которое нам понадобится:
То есть довольно аналогичная вещь в произведении
На нашем примере все увидим
Находим остатки по модулю 31
Рассматриваем первое слагаемое. Просто двойка не годится, нам нужно найти ближайшее к 31 число, превосходящее его (иногда там в отрицательные числа залезаем, например, , но сейчас это не нужно), нам повезло, это 32
Учитываем, что , получаем
То есть остаток от деления первого слагаемое на 31 получился равным 10. Прекрасно, аналогично со вторым
Остаток 21, чудесно. Выполняем последний шаг.
То есть остаток от деления исходного числа на 31 равен 0, следовательно, исходное число делится на 31, что и требовалось доказать.