LeetCode #1079

Letter Tile Possibilities

1개의 풀이 · C++

문제 원문 보기 ↗

SOLUTION INFO

C++ · main.cpp

main.cpp
class Solution {
public:

    int numTilePossibilities(string tiles) {
        vector<int> cnt(26);
        for(char ch: tiles) ++ cnt[ch - 'A'];
        int ans = 0;
        vector<int> used(26);
        function<void(int)> dfs = [&](int dep) -> void {
            if(dep > 0) ++ ans;
            if(dep == tiles.size())  return;
            for(int i = 0; i < 26; ++i) {
                if(cnt[i] == 0) continue;
                -- cnt[i];
                dfs(dep + 1);
                ++ cnt[i];
            }
        };
        dfs(0);
        return ans;
    }
};

SOLUTION DESCRIPTION

풀이 설명

등록된 풀이 설명이 없습니다.