Naming a Company LeetCode solution in Java
1class Solution {2public long distinctNames(String[] ideas) {3// HashSet + String Manipulation; TC: O(26*26*n); SC: O(26*n)4HashSet<String>[] arr = new HashSet[26];5for (int i = 0; i < 26; i++) {6arr[i] = new HashSet<>();7}8for (String s : ideas) {9arr[s.charAt(0) - 'a'].add(s.substring(1));10}11long ans = 0, cnt;12for (int i = 0; i < 26; i++) {13for (int j = i + 1; j < 26; j++) {14cnt = 0;15for (String str : arr[j]) {16if (arr[i].contains(str)) cnt++;17}18ans += 2 * (arr[i].size() - cnt) * (arr[j].size() - cnt);19}20}21return ans;22}23}