Solução Chandu e letras consecutivas

Solução de Lucas Maekawa, comentário de João Guilherme

Para ver o problema original, clique aqui.

A solução requer apenas o uso de técnicas simples da linguagem. Usamos uma variável ant que inicialmente é definida por uma letra que não pode aparecer nas nossas palavras, a seguir nós lemos a string e começamos a passar por cada letra dela, se está for diferente da anterior, nós a imprimimos, por fim atualizamos a variável ant.

Segue o código para melhor entendimento.


#include <cstdio>
using namespace std;
int main() {
char ant, S[35];
int n;
scanf("%d", &n);
while(n--) {
ant = 'A';
scanf(" %[^\n]", S);
for(int i = 0; S[i] != '\0'; i++) {
if(S[i] != ant) {
printf("%c", S[i]);
ant = S[i];
}
}
printf("\n");
}
return 0;
}