Чертёжнику был дан для исполнения следующий алгоритм: повтори 2 paз команда1 сместиться на (3, 3) сместиться на (1, −2) конец сместиться на (4, −6) после выполнения этого алгоритма чертёжник вернулся в исходную точку. какую команду надо поставить вместо команды команда1?
input_list = ['2','20','004','66']
import itertools
max_num = 0
for test_permutation in itertools.permutations(input_list):
test_num = int(''.join(test_permutation))
if max_num < test_num:
max_num = test_num
print(max_num)
Объяснение:
каким-то образом реши как вводятся числа, и составь из них список input_list - как строки из чисел (не превращай их в числа раньше времени, т.к. 004 превратится в 4).
вся магия происходит в itertools.permutations, она возвращает всевозможные перестановки этого списка. в цикле проверяется составленное число из этой перестановки является ли самым большим или нет.
это решение задачи имеет сложность O(n!) где n - число элементов списка. т.к. именно столько перестановок, можно уменьшить сложность до O(1) отсортировав список по-алфавиту по убыванию, и собрать из него число, но нужно еще доказать что именно такое число будет самым большим.
Английский:
“In addition to word processors designed for
creating and processing words on a computer, there are a number of
programs that automate human work
with text information ". The result obtained using
translate the same program into Russian. This text
the original phrase and the final result. Give your comments
tari.
Казахский:
«Арналған мәтіндік процессорлардан басқа
сөздерді компьютерде құру және өңдеу, олардың саны бар
адам жұмысын автоматтандыратын бағдарламалар
мәтіндік ақпаратпен ». Пайдалану арқылы алынған нәтиже
сол бағдарламаны орыс тіліне аударыңыз. Бұл мәтін
түпнұсқа фраза және соңғы нәтиже. Түсініктемелеріңізді беріңіз
тарих.
Объяснение:
Выбери язык который больше нравится