Найдите в данной строке расположенную непосредственно после буквы D
Условие
Текстовый файл состоит из цифр от 1 до 9, знаков операций «+», «-» и «*» (сложение, вычитание и умножение) и заглавных латинских букв A, B, C, D. Назовём правильной суммой строку, содержащую последовательность из одного или более десятичных чисел, в которой между соседними числами стоит ровно один знак «+» или «-» и нет других знаков. Примеры правильных сумм: «23», «115+6», «1980+12−123−51+3». Назовём результатом правильной суммы число, которое получится при выполнении записанных в соответствующей строке сложений. Например, результат правильной суммы «2+3» — число 5, а результат правильной суммы «1+2−8+3» — число −2. Найдите в данной строке расположенную непосредственно после буквы D правильную сумму с наибольшим результатом.В ответе запишите результат найденной суммы. Гарантируется, что ответ не превышает 2 · 10⁹.Задание 24
Ответ
198
Решение по шагам
Как рассуждать
Решение. Приведем решение Юрия Красильникова на языке Python.def pravsum(s): r,i = [],0 s += ';' while True: while '1' <= s[i] <= '9': i += 1 r.append(eval(s[:i])) if s[i] not in '+-': break i += 1 if not ('1' <= s[i] <= '9'): break return max(r)a = open('24.txt').readline().strip().split('D')[1:]ans = [pravsum(x) for x in a if len(x) > 0 and x[0].isdigit()]print(max(ans))^() Ответ:
Осталось ещё 1 шаг — откроются после входа:
- Шаг 2
Бесплатно · займёт минуту