solution:
题意:将多个相连的相同字母只保留两个,如果前面刚好有两个相连的相同字母,后面接着的若有重复的只保留一个。
code:
#include<stdio.h>
#include<string.h>
int main()
{
char a[200200],b[200200];
int i,s,t;
while(~scanf("%s",a))
{
t=strlen(a);
s=0;
for(i=0;i<t;i++)
{
if(i>=2&&b[s-1]==a[i]&&a[i]==b[s-2])continue;//相连重复的字母两个以上时;
if(i>=3&&b[s-1]==a[i]&&b[s-2]==b[s-3])continue;//前面刚好有两个相连的相同字母,后面的又有相连重复的字符时;
b[s++]=a[i];
}
b[s]='\0';
puts(b);
}
}