Учитывая
-
словарь, полный слов
{in, july, den, dentist, best, ...}
с некоторым API С++ для доступа к нему:boolean findWord(string word)
илиstring getNextWord(void)
для итерации через него, -
некоторая строка ввода без пробела, например:
bestdentistinjuly
...
Выход
-
best dentist in july is...
(в основном отделяйте непространственную строку пробелом, заданному словарем)
Каким будет лучший алгоритм для его решения?
Тонкий, но важный вопрос заключается в том, есть ли какой-нибудь причудливый способ решить недостижимую тупиковую проблему. Например, den
и dentist
являются действительными словами для рассеивания остальной части строки, одна из которых может быть просто тупиковой.
Мне кажется, что это жадная проблема или что-то решаемое динамическим программированием..