# Solving Leetcode Interviews in Seconds with AI: Find Longest Special Substring That Occurs Thrice I


	# Introduction
	In this blog post, we will explore how to solve the LeetCode problem "2981" using AI. LeetCode is a popular platform for preparing for coding interviews, and with the help of AI tools like [Chatmagic](https://www.chatmagic.app), we can generate solutions quickly and efficiently - helping you pass the interviews and get the job offer without having to study for months.

	# Problem Statement
	> You are given a string s that consists of lowercase English letters. A string is called special if it is made up of only a single character. For example, the string "abc" is not special, whereas the strings "ddd", "zz", and "f" are special. Return the length of the longest special substring of s which occurs at least thrice, or -1 if no special substring occurs at least thrice. A substring is a contiguous non-empty sequence of characters within a string.   Example 1:  Input: s = "aaaa" Output: 2 Explanation: The longest special substring which occurs thrice is "aa": substrings "aaaa", "aaaa", and "aaaa". It can be shown that the maximum length achievable is 2.  Example 2:  Input: s = "abcdef" Output: -1 Explanation: There exists no special substring which occurs at least thrice. Hence return -1.  Example 3:  Input: s = "abcaba" Output: 1 Explanation: The longest special substring which occurs thrice is "a": substrings "abcaba", "abcaba", and "abcaba". It can be shown that the maximum length achievable is 1.    Constraints:  3 <= s.length <= 50 s consists of only lowercase English letters.  

	# Explanation
	Here's a solution to the problem, incorporating efficiency and clarity:

*   **Iterate and Count:** Iterate through the string, identifying consecutive sequences of the same character.
*   **Check for Thrice Occurrence:** For each length of special substring found, check if it occurs at least three times in the input string.
*   **Maximize Length:** Keep track of the maximum length of special substrings that meet the occurrence criterion.

*   **Runtime Complexity:** O(n^2), where n is the length of the input string.
*   **Storage Complexity:** O(1).

	
	# Code
	```python
	def longest_special_substring(s: str) -> int:
    """
    Finds the length of the longest special substring of s which occurs at least thrice.

    Args:
        s: The input string consisting of lowercase English letters.

    Returns:
        The length of the longest special substring that occurs at least thrice,
        or -1 if no such substring exists.
    """

    max_len = -1
    n = len(s)

    for char_code in range(ord('a'), ord('z') + 1):
        char = chr(char_code)
        for length in range(n, 0, -1):
            substring = char * length
            count = 0
            for i in range(n - length + 1):
                if s[i:i+length] == substring:
                    count += 1

            if count >= 3:
                max_len = length
                return max_len # optimization: return early since length is decreasing

    return max_len
	```
			
