Вам необходимо написать программу распознавания чисел, записанных прописью. Сначала на вход программе подаётся обучающий блок, состоящий из 27 строк. Первые 9 строк содержат слова "один", "два", ...., "девять", следующие 9 строк — слова "одиннадцать", "двенадцать", ... "девятнадцать", следующие 9 строк — слова "десять", "двадцать", ..., "девяносто". Все слова записаны меленькими русскими буквами без лишних пробелов в начале и в конце строки.
Затем на вход программе подаётся значение N — количество записей, которые необходимо обработать. Следующие N строк содержат записанные словами числа. Каждое число записано по-русски, маленькими буквами, без ошибок. Если число состоит из нескольких слов, между словами находится ровно один пробел, лишних пробелов в начале и в конце строк нет.
Напишите эффективную программу, которая определит сумму тех входных чисел, которые находятся в интервале то 1 до 99.
Размер памяти, которую использует Ваша программа, не должен зависеть от длины исходного списка.
Перед текстом программы кратко опишите используемый Вами алгоритм решения задачи.
Пример входных данных (обучающий блок показан в примере с сокращениями):
один
два
...
девяноста
5
двадцать восемь
два миллиона
четырнадцать
сто двадцать три
тысяча девятьсот восемьдесят четыре
Пример выходных данных для приведённого выше примера входных данных:
42
PDF-версии: 