Super Reduced String

  • + 0 comments
    def generate_string(s):
        n = len(s)
        pairs = 0
        st = list(s)
        
        for i in range(n - 1):
            if st[i] == st[i + 1]:
                st[i] = st[i + 1] = ''
                pairs += 1
        
        s = "".join([i for i in st if i != ''])
        
        return (pairs, s)
        
    
    def superReducedString(s):
        pairs, result = generate_string(s)
        
        if pairs != 0:
            return superReducedString(result)
        
        return result if result else "Empty String"