CodeForces 81A

一眼看上去,题目很长,其实就是去重,把相邻且相同的两个字符同时去掉,直到没有相邻且相同的字符为止

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <string>
 4 #include <cstring>
 5 #include <string.h>
 6 using namespace std;
 7 char s[200002];
 8 int main(){
 9     scanf("%s",s);
10     int len=strlen(s);
11     int j=1;
12     for(int i=1;i<len;i++){
13         if(s[i]!=s[j-1])s[j++]=s[i];             //当前的字符与新串中的最后一个字符不一样,就复制
14         else {
15             j--;s[j]='';               //当前的字符与新串中的最后一个字符一样把新串最后一个删除了
16         }
17     }
18     s[j]='';                        //把j后面的字符都不要了,printf("%s",s),会在遇到‘’,的时候结束输出 
19     printf("%s
",s);
20 }
原文地址:https://www.cnblogs.com/Mr-Xu-JH/p/3900932.html