Программа курса:
Внимание! Решать задачи может только авторизованный
пользователь. Пройдите регистрацию на сайте.
Задача 7: Бейсбольный матч
Напишите определение функции calPoints(operations), которая принимает список строк operations и возвращает целое число — сумму всех очков, записанных в записи после применения всех операций.
Вам нужно вести учет очков в игре в бейсбол с особыми правилами.
В начале игры запись пуста.
Вам дан список строк operations, где operations[i] — это операция, которую нужно применить к записи, и она может быть одной из следующих:
- Целое число x:
Добавить новое очко xxx в запись. - '+':
Добавить новое очко, равное сумме двух предыдущих очков. - 'D':
Добавить новое очко, равное удвоенному предыдущему очку. - 'C':
Аннулировать предыдущее очко, удалив его из записи.
Ваша задача — вернуть сумму всех очков, которые остались в записи после выполнения всех операций.
Гарантируется, что:
- Все промежуточные и итоговые вычисления поместятся в 32-битное целое число.
- Все операции являются допустимыми.
Примеры:
Пример 1:
Ввод:ops = ["5", "2", "C", "D", "+"]
Вывод:30
Объяснение:
"5"— добавляем 5, запись:[5]."2"— добавляем 2, запись:[5, 2]."C"— аннулируем последнее очко, запись:[5]."D"— добавляем 2×5=102 \times 5 = 102×5=10, запись:[5, 10]."+"— добавляем 5+10=155 + 10 = 155+10=15, запись:[5, 10, 15].- Сумма: 5+10+15=305 + 10 + 15 = 305+10+15=30.
Пример 2:
Ввод:ops = ["5", "-2", "4", "C", "D", "9", "+", "+"]
Вывод:27
Объяснение:
"5"— добавляем 5, запись:[5]."-2"— добавляем -2, запись:[5, -2]."4"— добавляем 4, запись:[5, -2, 4]."C"— аннулируем последнее очко, запись:[5, -2]."D"— добавляем 2×−2=−42 \times -2 = -42×−2=−4, запись:[5, -2, -4]."9"— добавляем 9, запись:[5, -2, -4, 9]."+"— добавляем −4+9=5-4 + 9 = 5−4+9=5, запись:[5, -2, -4, 9, 5]."+"— добавляем 9+5=149 + 5 = 149+5=14, запись:[5, -2, -4, 9, 5, 14].- Сумма: 5+(−2)+(−4)+9+5+14=275 + (-2) + (-4) + 9 + 5 + 14 = 275+(−2)+(−4)+9+5+14=27.
Вы должны Войти или Зарегистрироваться чтобы оставлять комментарии