Return all such possible sentences.
s ="catsanddog"
dict ="cat", "cats", "and", "sand", "dog"
[cats and dog, cat sand dog]
s ="catsanddog" dict ="cat","cats","and","sand","dog"
[cats and dog, cat sand dog]
""""
深度优先搜索DFS
"""
def dfs(s, dic, arr, ans):
if not s:
ans.append(' '.join(arr))
for w in dic:
if s.startswith(w):
dfs(s[len(w):], dic, arr + (w,), ans)
if __name__ == "__main__":
s = input().strip()
s = s[s.index('"') + 1:-1]
dic = input().strip()
dic = eval("[" + dic[dic.index('"'):] + "]")
dic.sort(reverse=True)
ans = []
dfs(s, dic, tuple(), ans)
print('[' + ', '.join(ans) + ']')