Формальное исполнение простого алгоритма, записанного на естественном языке, или умение создавать линейный алгоритм для формального исполнителя с ограниченным набором команд, или умение восстанавливать исходные данные линейного алгоритма по результатам его работы · 26 заданий
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Строится двоичная запись числа N. 2) Далее…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится двоичная запись числа N. 2) Далее…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится двоичная запись числа N. 2) К это…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Строится двоичная запись числа N. 2) Кажды…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Строится двоичная запись числа N. 2) Кажды…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Из числа N вычитается остаток от деления N…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Из числа N вычитается остаток от деления N…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом: 1) Строится двоичная запись числа N. 2) Далее…
Анализ алгоритмов и исполнители
- Задание №5№5
Автомат получает на вход трёхзначное число. По этому числу строится новое число по следующим правилам: 1) Вычисляются суммы квадратов первой и второй,…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится четверичная запись числа N. 2) Да…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится четверичная запись числа N. 2) Да…
Анализ алгоритмов и исполнители
- Задание №5№5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1) Строится четверичная запись числа N. 2) Да…
Анализ алгоритмов и исполнители
Автомат получает на вход трёхзначное число. По этому числу строится новое число по следующим правилам:
1) Вычисляются суммы квадратов первой и второй, а также второй и третьей цифр исходного числа.
2) Полученные два числа записываются друг за другом в порядке невозрастания (без разделителей).
Пример. Исходное число: 621. Суммы квадратов цифр: 62+22=40;22+12=5. Результат: 405.
Укажите наибольшее число, при обработке которого автомат выдаст число 9752.
Правильный ответ
946
Пояснение
Решение:
Автомат выводит две суммы квадратов цифр, записанные подряд в порядке невозрастания. Каждая сумма имеет вид a2+b2, где a и b — цифры, поэтому она не превосходит 92+92=162.
Разобьём 9752 на два куска A≥B, каждый не больше 162. Вариант 9 и 752 отпадает (9<752), вариант 975 и 2 отпадает (975>162). Остаётся A=97, B=52.
Пусть исходное число — d1d2d3. Тогда d12+d22=97 и d22+d32=52.
- 97 раскладывается на квадраты цифр единственным способом: 16+81, то есть цифры 4 и 9;
- 52 раскладывается единственным способом: 16+36, то есть цифры 4 и 6.
Общая цифра d2 должна входить в обе пары, значит d2=4, откуда d1=9 и d3=6.
def f(n):
d = [int(c) for c in str(n)]
a = d[0] ** 2 + d[1] ** 2
b = d[1] ** 2 + d[2] ** 2
return int(str(max(a, b)) + str(min(a, b)))
print(max(n for n in range(100, 1000) if f(n) == 9752))
Ответ: 946