1209. Remove All Adjacent Duplicates in String II - LeetCode Solution


Stack

Python Code:

class Solution:
    def removeDuplicates(self, s: str, k: int) -> str:
        stack = [s[0]]

        count = 1


        while True:

            for i in range(1, len(s), 1):
                if len(stack) == 0:
                    count = 1
                    stack.append(s[i])

                elif s[i] == stack[-1]:
                    count += 1

                    stack.append(s[i])
                else:
                    count = 1

                    stack.append(s[i])


                if count == k:


                    while count != 0:
                        stack.pop()
                        count -= 1

            if len(s) == len(stack):
                break
            s = stack
            stack = [s[0]]
            count = 1

        return "".join(stack)
        


Comments

Submit
0 Comments
More Questions

1374C - Move Brackets
1476A - K-divisible Sum
1333A - Little Artem
432D - Prefixes and Suffixes
486A - Calculating Function
1373B - 01 Game
1187A - Stickers and Toys
313B - Ilya and Queries
579A - Raising Bacteria
723A - The New Year Meeting Friends
302A - Eugeny and Array
1638B - Odd Swap Sort
1370C - Number Game
1206B - Make Product Equal One
131A - cAPS lOCK
1635A - Min Or Sum
474A - Keyboard
1343A - Candies
1343C - Alternating Subsequence
1325A - EhAb AnD gCd
746A - Compote
318A - Even Odds
550B - Preparing Olympiad
939B - Hamster Farm
732A - Buy a Shovel
1220C - Substring Game in the Lesson
452A - Eevee
1647B - Madoka and the Elegant Gift
1408A - Circle Coloring
766B - Mahmoud and a Triangle