1957. Delete Characters to Make Fancy String
JAVA
class Solution { public String makeFancyString(String s) { StringBuffer sb = new StringBuffer(); int length = s.length(); char prev = ' '; int count = 1; for (int i = 0; i < length; i++) { char curr = s.charAt(i); if (curr == prev) count++; else { count = 1; prev = curr; } if (count < 3) sb.append(curr); } return sb.toString(); } } ############ class Solution { public String makeFancyString(String s) { StringBuilder ans = new StringBuilder(); for (char c : s.toCharArray()) { int n = ans.length(); if (n > 1 && ans.charAt(n - 1) == c && ans.charAt(n - 2) == c) { continue; } ans.append(c); } return ans.toString(); } }
C++
class Solution {
public:
string makeFancyString(string s) {
int i = 0, j = 0, N = s.size();
while (i < N) {
int start = i;
while (i < N && s[i] == s[start]) {
if (i - start < 2) s[j++] = s[i];
++i;
}
}
s.resize(j);
return s;
}
};
Comments
Post a Comment