Skip to content

Commit edb0172

Browse files
committedMay 27, 2023
solves #2264: Largest 3-Same-Digit Number in String
in java
1 parent ffa1ff1 commit edb0172

File tree

2 files changed

+26
-1
lines changed

2 files changed

+26
-1
lines changed
 

‎README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -733,7 +733,7 @@
733733
| 2248 | [Intersection of Multiple Arrays](https://leetcode.com/problems/intersection-of-multiple-arrays) | [![Java](assets/java.png)](src/IntersectionOfMultipleArrays.java) | |
734734
| 2255 | [Count Prefixes of a Given String](https://leetcode.com/problems/count-prefixes-of-a-given-string) | [![Java](assets/java.png)](src/CountPrefixesOfAGivenString.java) | |
735735
| 2259 | [Remove Digit From Number to Maximize Result](https://leetcode.com/problems/remove-digit-from-number-to-maximize-result) | [![Java](assets/java.png)](src/RemoveDigitFromNumberToMaximizeResult.java) | |
736-
| 2264 | [Largest 3-Same-Digit Number in String](https://leetcode.com/problems/largest-3-same-digit-number-in-string) | | |
736+
| 2264 | [Largest 3-Same-Digit Number in String](https://leetcode.com/problems/largest-3-same-digit-number-in-string) | [![Java](assets/java.png)](src/Largest3SameDigitNumberInString.java) | |
737737
| 2269 | [Find the K-Beauty of a Number](https://leetcode.com/problems/find-the-k-beauty-of-a-number) | | |
738738
| 2273 | [Find Resultant Array After Removing Anagrams](https://leetcode.com/problems/find-resultant-array-after-removing-anagrams) | | |
739739
| 2278 | [Percentage of Letter in String](https://leetcode.com/problems/percentage-of-letter-in-string) | | |
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
// https://leetcode.com/problems/largest-3-same-digit-number-in-string
2+
// T: O(|s|)
3+
// S: O(1)
4+
5+
public class Largest3SameDigitNumberInString {
6+
public String largestGoodInteger(String num) {
7+
char current = num.charAt(0), result = '0' - 1;
8+
for (int index = 1, count = 1 ; index < num.length() ; index++) {
9+
if (num.charAt(index) == current) {
10+
count++;
11+
} else {
12+
current = num.charAt(index);
13+
count = 1;
14+
}
15+
16+
if (count >= 3 && current > result) {
17+
result = current;
18+
}
19+
}
20+
21+
if (result >= '0') {
22+
return (result + "").repeat(3);
23+
} else return "";
24+
}
25+
}

0 commit comments

Comments
 (0)