def GetPossibleWords(words, chars):
chars_set = set(chars)
result = []
for word in words:
if set(word).issubset(chars_set):
result.append(word)
return result
words = ["python", "c++", "go", "php", "vb", "java"]
chars = ['+', 'o', 'c', 'y', 'p', 'g', 'n', 'h']
print(GetPossibleWords(words, chars))
'''
run:
['c++', 'go', 'php']
'''