Skip to content

Latest commit

 

History

History

2306-NamingaCompany

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

Naming a Company

Problem can be found in here!

Solution: Hash Table

def distinctNames(ideas: List[str]) -> int:
    initial_groups = [set() for _ in range(26)]
    for idea in ideas:
        initial_groups[ord(idea[0])-ord("a")].add(idea[1:])

    answer = 0
    for i in range(25):
        for j in range(i+1, 26):
            num_of_mutual = len(initial_groups[i] & initial_groups[j])
            answer += 2 * (len(initial_groups[i])-num_of_mutual) * (len(initial_groups[j])-num_of_mutual)

    return answer

Time Complexity: O(nm), Space Complexity: O(nm), where n is the length of array ideas and m is the maximum length of a word in array ideas