#include <bits/stdc++.h> using namespace std; const int MAXN = 300000 + 10; // 用数组模拟栈,存储字符 char st[MAXN]; // 栈顶指针,初始可看作栈为空 int top; int main() { string s; cin >> s; // 遍历输入的字符串 for(int i = 0; i < s.size(); i++) { // 若栈不为空,且栈顶字符和当前字符相同 if(top && st[top] == s[i]) { // 弹出栈顶字符 top--; } else { // 否则将当前字符压入栈 st[++top] = s[i]; } } // 若栈不为空 if(top) { // 输出栈中剩余的字符 for(int i = 1; i <= top; i++) { cout << st[i]; } cout << endl; } else { // 若栈为空,输出 0 cout << 0 << endl; } return 0; }