All Downloads are FREE. Search and download functionalities are using the official Maven repository.

g0401_0500.s0472_concatenated_words.readme.md Maven / Gradle / Ivy

There is a newer version: 1.30
Show newest version
472\. Concatenated Words

Hard

Given an array of strings `words` (**without duplicates**), return _all the **concatenated words** in the given list of_ `words`.

A **concatenated word** is defined as a string that is comprised entirely of at least two shorter words in the given array.

**Example 1:**

**Input:** words = ["cat","cats","catsdogcats","dog","dogcatsdog","hippopotamuses","rat","ratcatdogcat"]

**Output:** ["catsdogcats","dogcatsdog","ratcatdogcat"]

**Explanation:** "catsdogcats" can be concatenated by "cats", "dog" and "cats"; "dogcatsdog" can be concatenated by "dog", "cats" and "dog"; "ratcatdogcat" can be concatenated by "rat", "cat", "dog" and "cat".

**Example 2:**

**Input:** words = ["cat","dog","catdog"]

**Output:** ["catdog"]

**Constraints:**

*   1 <= words.length <= 104
*   `1 <= words[i].length <= 30`
*   `words[i]` consists of only lowercase English letters.
*   All the strings of `words` are **unique**.
*   1 <= sum(words[i].length) <= 105




© 2015 - 2024 Weber Informatics LLC | Privacy Policy