这道题是NYOJ 的题难度也不是太大就是考察栈的用法,然而栈可以通过数组来模拟所以我就用数组来实现。时间0ms 秒过。附上代码:
#include<stdio.h>
#include<string.h>
char xx[10001];
char sx[10001];
int main(){
int n;
scanf("%d",&n);
while(n--){
memset(xx,0,sizeof(xx));
scanf("%s",xx);
int m=strlen(xx),o=0;
sx[o++]=xx[0];
for(int i=1;i<m;i++){
if(xx[i]-sx[o-1]==1||xx[i]-sx[o-1]==2) {
o--;sx[o]='\0';
}
else sx[o++]=xx[i];
}
if(sx[0]=='\0') printf("Yes\n");
else printf("No\n");
}
return 0;
}