2264. Largest 3-Same-Digit Number in String LeetCode Solution

In this guide, you will get 2264. Largest 3-Same-Digit Number in String LeetCode Solution with the best time and space complexity. The solution to Largest -Same-Digit Number in String problem is provided in various programming languages like C++, Java, and Python. This will be helpful for you if you are preparing for placements, hackathons, interviews, or practice purposes. The solutions provided here are very easy to follow and include detailed explanations.

Table of Contents

  1. Problem Statement
  2. Complexity Analysis
  3. Largest -Same-Digit Number in String solution in C++
  4. Largest -Same-Digit Number in String solution in Java
  5. Largest -Same-Digit Number in String solution in Python
  6. Additional Resources
2264. Largest 3-Same-Digit Number in String LeetCode Solution image

Problem Statement of Largest -Same-Digit Number in String

You are given a string num representing a large integer. An integer is good if it meets the following conditions:

It is a substring of num with length 3.
It consists of only one unique digit.

Return the maximum good integer as a string or an empty string “” if no such integer exists.
Note:

A substring is a contiguous sequence of characters within a string.
There may be leading zeroes in num or a good integer.

Example 1:

Input: num = “6777133339”
Output: “777”
Explanation: There are two distinct good integers: “777” and “333”.
“777” is the largest, so we return “777”.

Example 2:

Input: num = “2300019”
Output: “000”
Explanation: “000” is the only good integer.

Example 3:

Input: num = “42352338”
Output: “”
Explanation: No substring of length 3 consists of only one unique digit. Therefore, there are no good integers.

Constraints:

3 <= num.length <= 1000
num only consists of digits.

See also  1617. Count Subtrees With Max Distance Between Cities LeetCode Solution

Complexity Analysis

  • Time Complexity: O(n)
  • Space Complexity: O(1)

2264. Largest 3-Same-Digit Number in String LeetCode Solution in C++

class Solution {
 public:
  string largestGoodInteger(string num) {
    string ans;

    for (int i = 2; i < num.length(); ++i)
      if (num[i - 2] == num[i - 1] && num[i - 1] == num[i])
        ans = max(ans, num.substr(i - 2, 3));

    return ans;
  }
};
/* code provided by PROGIEZ */

2264. Largest 3-Same-Digit Number in String LeetCode Solution in Java

class Solution {
  public String largestGoodInteger(String num) {
    String ans = "";

    for (int i = 2; i < num.length(); ++i)
      if (num.charAt(i - 2) == num.charAt(i - 1) && num.charAt(i - 1) == num.charAt(i) &&
          num.substring(i - 2, i + 1).compareTo(ans) > 0)
        ans = num.substring(i - 2, i + 1);

    return ans;
  }
}
// code provided by PROGIEZ

2264. Largest 3-Same-Digit Number in String LeetCode Solution in Python

class Solution:
  def largestGoodInteger(self, num: str) -> str:
    return max(num[i - 2:i + 1]
               if num[i] == num[i - 1] == num[i - 2]
               else '' for i in range(2, len(num)))
# code by PROGIEZ

Additional Resources

Happy Coding! Keep following PROGIEZ for more updates and solutions.