diff options
Diffstat (limited to 'max_product_word_len.cpp')
-rw-r--r-- | max_product_word_len.cpp | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/max_product_word_len.cpp b/max_product_word_len.cpp deleted file mode 100644 index e119ea1..0000000 --- a/max_product_word_len.cpp +++ /dev/null @@ -1,31 +0,0 @@ -#include "leetcode.h" - -class Solution { -public: - int maxProduct(vector<string> &words) { - int n = words.size(), ans = 0; - vector<bitset<26>> chars(n); - for (int i = 0; i < n; i++) { - for (auto &ch : words[i]) - chars[i][ch - 'a'] = 1; - for (int j = 0; j < i; j++) - if (!helper(chars[i], chars[j])) - ans = max(ans, words[i].size() * words[j].size()); - } - return ans; - } - -private: - bool helper(bitset<26> &a, bitset<26> &b) { - for (int i = 0; i < 26; i++) - if (a[i] && b[i]) - return true; - return false; - } -}; - -int main() { - Solution obj; - vector<string> words = {"abcw", "baz", "foo", "bar", "xtfn", "abcdef"}; - cout << obj.maxProduct(words); -} |