Algorithms and Data Structures

  • Profound Academy

    • Status
      • 1
        Implementation
      • 2
        Bitwise operations
      • 3
        Prefix Sums
      • 4
        Sliding window / Two pointers
      • 5
        Modular Arithmetic
      • 6
        Number Theory
      • 7
        Binary Search
      • 8
        Basic Sorting
      • 9
        Greedy Algorithms
      • 10
        Basic Dynamic Programming
      • 11
        Recursion
      • 12
        Linked LIst
      • 13
        Queue & Stack
      • 14
        Binary tree + BST
      • 15
        Divide & Conquer + Advanced Sorting
      • 16
        Heap
      • 17
        Hashing
      • 18
        Graph Representation
      • 19
        BFS

  • Remove consecutive duplicates from a string

    Given a string s, you are asked to remove all the consecutive duplicate letters from it. As long as there are consecutive equal letters, the leftmost two of those should be removed. This process should be repeated until no consecutive equal letters are present in the string s. So, the final string should not contain any consecutive duplicate letters.

    Input

    The input contains a single line s (1 ≤ |s| ≤ ).

    Output

    The programs should print the resulting string after removals.

    Examples

    Input
    Output
    abbac
    c
    dabbaaa
    d
    helloo!oo
    he!
    xabbay
    xy
    abcddcba

    Explanation

    1. abbac → aac → c
    1. dabbaaa → daaaa → daa → d
    1. helloo!oo → heoo!oo → he!oo → he!
    1. xabbay → xaay → xy
    1. abcddcba → abccba → abba → aa →
     

    Constraints

    Time limit: 1 seconds

    Memory limit: 512 MB

    Output limit: 1 MB

    To check your solution you need to sign in
    Sign in to continue