Число из английских слов

Задача по программированию с проверкой онлайн

Сложность
Сложная
Языки
Python
JavaScript
TypeScript
Java
Go
Темы
Разбор и проверка данных
Строки
Математика

Каноническая запись целого числа от 0 до 999 999 999 999 999 английскими словами строится так. Число 0 — это zero. Иначе число делится на группы по три цифры справа; каждая ненулевая группа записывается словами и за ней идёт слово разряда: trillion, billion, million, thousand, а у последней группы слова разряда нет. Группы идут от старшей к младшей, нулевые группы пропускаются. Группа от 1 до 999: если её сотни h ненулевые, сначала идут слово цифры h и hundred; затем, если остаток r ненулевой, — запись r: для 1–19 одно слово one … nineteen, для 20–99 слово десятков twenty … ninety, а при ненулевых единицах к нему через дефис добавляется цифра (forty-two). Слова разделены ровно одним пробелом, без пробелов в начале и в конце, всё строчными буквами, без and.

Дана строка до 200 символов. Если она — каноническая запись какого-то числа, верните это число, иначе верните -1.

Пример: "two million forty-five thousand one hundred seven" → 2045107; "one hundred and five" → -1.


Источник: задача CodeShare

Решить онлайнБесплатно и без регистрации: пишете код в браузере и проверяете его тестами (без аккаунта — несколько задач в день).

Ещё задачи

Все задачи для тренировки