Генератор корректного предложения из списка слов
Следующая задача: Необходимо в функцию передать список слов и одно слово, на выходе необходимо корректное предложение с этим словом и любыми словами из списка, например:
list1 = ["в", "на", "к", "погода", "улица", "солнце"]
str1 = "хорошая"
gen_pr(list1, str1)
Вывод: "На улице хорошая погода" (или иное со словом "хорошая")
Нужен совет, как лучше это реализовать. Можно реализовать с помощью цепей Маркова, генерируя и проверяя каждое предложение на list1 и str1. Можно ли это ещё как либо реализовать?