小可很喜欢玩消消乐,所以想自己做一个消消乐的小程序,小可想用26个小写英文字母来代表不同的方块,相同的两个方块会被消除,也可以连消,比如“abccbd”会消除成“ad”。但是三个相同的方块只会消除两个,比如“ccc”会消除成“c”。请帮小可完成这个小程序。```cpp #include #include using namespace std; stack b; stack a; stack d; int main() { char c; int len1=0; while(cin>>c) { a.push(c); len1++; } int len2=len1;
for(int j=0;j<len1;j++){
a=b;
b=d;
char b1=';';
for(int i=0;i<len1;i++){
if(a.top()==b1){
a.pop();
b.pop();
len2-=2;
//cout<<i<<' '<<a.top()<<' '<<b1<<' ';
}
else{
b.push(a.top());
a.pop();
b1=b.top();
}
}
cout<<len2;
}
for(int i=0;i<=len2;i++){
cout<<b.top();
b.pop();
}
}
为啥不对
****