LeetCode-in-Java

2264. Largest 3-Same-Digit Number in String

Easy

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

public class Solution {
    public String largestGoodInteger(String num) {
        String maxi = "000";
        int c = 0;
        for (int i = 0; i < num.length() - 2; i++) {
            String s = num.substring(i, i + 3);
            if (s.charAt(0) == s.charAt(1) && s.charAt(1) == s.charAt(2)) {
                if (s.compareTo(maxi) >= 0) {
                    maxi = s;
                }
                ++c;
            }
        }
        if (c == 0) {
            return "";
        }
        return maxi;
    }
}