#P0715. 消除相邻字符
消除相邻字符
题目描述
小明发现了一台神奇的字符消除机。
这台机器会从左到右读取一串小写字母。每读入一个字符,机器都会把它放到传送带的末尾。
不过,这台机器有一个特别的规则:如果新放上去的字符和传送带末尾原本的字符相同,那么这两个相同的字符会立刻发光并一起消失。
小明想知道,当整串字符都被机器处理完之后,传送带上最后还会剩下什么。
给定一个字符串 s,从左到右依次处理每个字符,并按照下面的规则操作:
- 如果当前字符和已经保留下来的最后一个字符相同,那么这两个相同字符会一起消失;
- 否则,当前字符会被保留下来。
所有字符处理完成后,请输出最后剩下的字符串。
如果最后没有剩下任何字符,输出 Empty。
输入格式
输入一行,一个字符串 s。
输出格式
输出一行,表示最后剩下的字符串;如果没有剩下任何字符,输出 Empty。
样例
abbaca
ca
abba
Empty
样例说明
样例 1 中,处理过程如下:
- 读入
a,保留后得到a - 读入
b,与最后一个字符不同,保留后得到ab - 读入
b,与最后一个字符相同,两个b一起消失,得到a - 读入
a,与最后一个字符相同,两个a一起消失,得到空串 - 读入
c,保留后得到c - 读入
a,与最后一个字符不同,保留后得到ca
所以最后输出 ca。
样例 2 中,abba 处理后所有字符都会消失,所以输出 Empty。
数据范围
- 对于
100%的数据,满足1 <= s.length() <= 100000 - 字符串
s中只包含小写英文字母