java.lang.Object
g2201_2300.s2213_longest_substring_of_one_repeating_character.Solution

public class Solution extends java.lang.Object
2213 - Longest Substring of One Repeating Character.

Hard

You are given a 0-indexed string s. You are also given a 0-indexed string queryCharacters of length k and a 0-indexed array of integer indices queryIndices of length k, both of which are used to describe k queries.

The ith query updates the character in s at index queryIndices[i] to the character queryCharacters[i].

Return an array lengths of length k where lengths[i] is the length of the longest substring of s consisting of only one repeating character after the ith query is performed.

Example 1:

Input: s = “babacc”, queryCharacters = “bcb”, queryIndices = [1,3,3]

Output: [3,3,4]

Explanation: - 1st query updates s = “bbbacc”. The longest substring consisting of one repeating character is “bbb” with length 3.

  • 2nd query updates s = “bbbccc”. The longest substring consisting of one repeating character can be “bbb” or “ccc” with length 3.

  • 3rd query updates s = “bbbbcc”. The longest substring consisting of one repeating character is “bbbb” with length 4.

Thus, we return [3,3,4].

Example 2:

Input: s = “abyzz”, queryCharacters = “aa”, queryIndices = [2,1]

Output: [2,3]

Explanation: - 1st query updates s = “abazz”. The longest substring consisting of one repeating character is “zz” with length 2.

  • 2nd query updates s = “aaazz”. The longest substring consisting of one repeating character is “aaa” with length 3.

Thus, we return [2,3].

Constraints:

  • 1 <= s.length <= 105
  • s consists of lowercase English letters.
  • k == queryCharacters.length == queryIndices.length
  • 1 <= k <= 105
  • queryCharacters consists of lowercase English letters.
  • 0 <= queryIndices[i] < s.length
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int[]
    longestRepeating(java.lang.String s, java.lang.String queryCharacters, int[] queryIndices)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Solution

      public Solution()
  • Method Details

    • longestRepeating

      public int[] longestRepeating(java.lang.String s, java.lang.String queryCharacters, int[] queryIndices)