letter_tile_possibilities.py (763B)
| # 1079. Letter Tile Possibilities
"""
given 'n' tiles where each tile has one letter ('tiles[i]') printed on it.
return the number of possible non-empty letters printed on those tiles.
"""
class Solution(object):
def numTilePossibilities(self, tiles):
"""
:type tiles: str
:rtype: int
"""
ans = set()
def dfs(path, tiles):
if path:
ans.add(path)
for i in range(len(tiles)):
dfs(path + tiles[i], tiles[:i] + tiles[i + 1 :])
dfs("", tiles)
return len(ans)
if __name__ == "__main__":
obj = Solution()
print(obj.numTilePossibilities("AAB"))
print(obj.numTilePossibilities("AAABBC"))
print(obj.numTilePossibilities("V"))
|