2264. Largest 3-Same-Digit Number in String

Difficulty:
Related Topics:
Similar Questions:

Problem

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

Return **the **maximum good **integer as a *string* or an empty string "" if no such integer exists**.

Note:

  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:

Solution

/**
 * @param {string} num
 * @return {string}
 */
var largestGoodInteger = function(num) {
    var maxDigit = '';
    var digitLength = 0;
    for (var i = 0; i < num.length; i++) {
        if (num[i] === num[i - 1]) {
            digitLength += 1;
            if (digitLength >= 3 && num[i] > maxDigit) {
                maxDigit = num[i];
            }
        } else {
            digitLength = 1;
        }
    }
    return maxDigit.repeat(3);
};

Explain:

nope.

Complexity: