Задача 5820. Источник: Поляков. Задание КИМ 14
(А. Богданов) Операнды арифметического выражения записаны в системе счисления с некоторым частично заданным основанием:
1x34228 – 271x324
В записи чисел переменной x обозначена неизвестная цифра. Определите наибольшее значение x, при котором значение данного арифметического выражения кратно 25. Для найденного значения x вычислите частное от деления абсолютного значения арифметического выражения на 25 и укажите его в ответе в десятичной системе счисления. Основание системы счисления в ответе указывать не нужно.
Решение
Python
result = 0
for x in range(10):
n1 = 28 ** 4 + x * 28 ** 3 + 3 * 28 ** 2 + 4 * 28 + 2
n2 = 2 * (10324 + x * 1000) + 7
n = n1 - n2
if n % 25 == 0:
result = n // 25
print(result)
PascalABC
var
x, n, n1, n2, r: Integer;
begin
for x := 0 to 9 do
begin
n1 := trunc(power(28, 4)) + x * trunc(power(28, 3)) +
3 * trunc(power(28, 2)) + 4 * 28 + 2;
n2 := 2 * (10324 + x * 1000) + 7;
n := n1 - n2;
if n mod 25 = 0 then
r := n div 25;
end;
Writeln(r);
end.
C++
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int r = 0;
for (int x = 0; x < 10; x++)
{
int n1 = (int)pow(28, 4) + x * (int)pow(28, 3) +
3 * (int)pow(28, 2) + 4 * 28 + 2;
int n2 = 2 * (10324 + x * 1000) + 7;
int n = n1 - n2;
if (n % 25 == 0)
r = n / 25;
}
cout << r << endl;
}
Ответ
27051