Delete Characters to Make Fancy String

easy string scan

Problem

Remove minimum chars so s has no three consecutive identical characters.

Inputs = "leeetcode"
Output"leetcode"
"eee" trimmed to "ee".

def make_fancy_string(s):
    out = []
    for c in s:
        if len(out) >= 2 and out[-1] == out[-2] == c:
            continue
        out.append(c)
    return ''.join(out)
function makeFancyString(s) {
  let out = '';
  for (const c of s) {
    if (out.length >= 2 && out[out.length-1] === c && out[out.length-2] === c) continue;
    out += c;
  }
  return out;
}
class Solution {
    public String makeFancyString(String s) {
        StringBuilder sb = new StringBuilder();
        for (char c : s.toCharArray()) {
            int n = sb.length();
            if (n >= 2 && sb.charAt(n-1) == c && sb.charAt(n-2) == c) continue;
            sb.append(c);
        }
        return sb.toString();
    }
}
string makeFancyString(string s) {
    string out;
    for (char c : s) {
        int n = out.size();
        if (n >= 2 && out[n-1] == c && out[n-2] == c) continue;
        out += c;
    }
    return out;
}
Time: O(n) Space: O(n)