Class Solution

java.lang.Object
g2501_2600.s2514_count_anagrams.Solution

public class Solution extends Object
2514 - Count Anagrams.<p>Hard</p> <p>You are given a string <code>s</code> containing one or more words. Every consecutive pair of words is separated by a single space <code>' '</code>.</p> <p>A string <code>t</code> is an <strong>anagram</strong> of string <code>s</code> if the <code>i<sup>th</sup></code> word of <code>t</code> is a <strong>permutation</strong> of the <code>i<sup>th</sup></code> word of <code>s</code>.</p> <ul> <li>For example, <code>&quot;acb dfe&quot;</code> is an anagram of <code>&quot;abc def&quot;</code>, but <code>&quot;def cab&quot;</code> and <code>&quot;adc bef&quot;</code> are not.</li> </ul> <p>Return <em>the number of <strong>distinct anagrams</strong> of</em> <code>s</code>. Since the answer may be very large, return it <strong>modulo</strong> <code>10<sup>9</sup> + 7</code>.</p> <p><strong>Example 1:</strong></p> <p><strong>Input:</strong> s = &ldquo;too hot&rdquo;</p> <p><strong>Output:</strong> 18</p> <p><strong>Explanation:</strong> Some of the anagrams of the given string are &ldquo;too hot&rdquo;, &ldquo;oot hot&rdquo;, &ldquo;oto toh&rdquo;, &ldquo;too toh&rdquo;, and &ldquo;too oht&rdquo;.</p> <p><strong>Example 2:</strong></p> <p><strong>Input:</strong> s = &ldquo;aa&rdquo;</p> <p><strong>Output:</strong> 1</p> <p><strong>Explanation:</strong> There is only one anagram possible for the given string.</p> <p><strong>Constraints:</strong></p> <ul> <li><code>1 <= s.length <= 10<sup>5</sup></code></li> <li><code>s</code> consists of lowercase English letters and spaces <code>' '</code>.</li> <li>There is single space between consecutive words.</li> </ul>
  • Constructor Details

    • Solution

      public Solution()
  • Method Details

    • countAnagrams

      public int countAnagrams(String s)