import sys import json def load_data(): data = json.loads(sys.stdin.read()) return data["string"], set(data["word_list"]) def dfs(s, start, words, arr, results): if start == len(s): results.append(",".join(arr)) return for i in range(start + 1, len(s) + 1): word = s[start:i] if word in words: arr.append(word) dfs(s, i, words, arr, results) arr.pop() def main(): string, words = load_data() results, arr = [], [] start = 0 dfs(string, start, words, arr, results) results.sort() print(json.dumps({'results': results})) if __name__ == "__main__": main()