#include <stdio.h>
#include <string.h>
int main() {
char* frase;
fgets (frase
, 256, stdin
);
// Verificando se o último caracter é uma quebra de linha e substituindo
if (frase
[strlen(frase
)-1] == '\n') { frase
[strlen(frase
)-1] = '\0'; }
// Ordenando a frase
for (int i
= 0; i
< strlen(frase
); i
++) { for (int o
= 0; o
< strlen(frase
); o
++) { if (frase[i] < frase[o]) {
char temp = frase[i];
frase[i] = frase[o];
frase[o] = temp;
}
}
}
// Imprimindo na tela
char caracterAtual = frase[1];
int contador = 0;
for (int i
= 1; i
<= strlen(frase
); i
++) { if (frase[i] != ' ') {
if (frase[i] == caracterAtual) {
contador++;
} else {
if (caracterAtual != ' ') {
printf("%c = %d\n", caracterAtual
, contador
); }
contador = 1;
caracterAtual = frase[i];
}
}
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4KCmludCBtYWluKCkgewogICAgY2hhciogZnJhc2U7CiAgICBmZ2V0cyAoZnJhc2UsIDI1Niwgc3RkaW4pOwoKICAgIC8vIFZlcmlmaWNhbmRvIHNlIG8gw7psdGltbyBjYXJhY3RlciDDqSB1bWEgcXVlYnJhIGRlIGxpbmhhIGUgc3Vic3RpdHVpbmRvCiAgICBpZiAoZnJhc2Vbc3RybGVuKGZyYXNlKS0xXSA9PSAnXG4nKSB7CiAgICAgICAgZnJhc2Vbc3RybGVuKGZyYXNlKS0xXSA9ICdcMCc7CiAgICB9CgogICAgLy8gT3JkZW5hbmRvIGEgZnJhc2UKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgc3RybGVuKGZyYXNlKTsgaSsrKSB7CiAgICAgICAgZm9yIChpbnQgbyA9IDA7IG8gPCBzdHJsZW4oZnJhc2UpOyBvKyspIHsKICAgICAgICAgICAgaWYgKGZyYXNlW2ldIDwgZnJhc2Vbb10pIHsKICAgICAgICAgICAgICAgIGNoYXIgdGVtcCA9IGZyYXNlW2ldOwogICAgICAgICAgICAgICAgZnJhc2VbaV0gPSBmcmFzZVtvXTsKICAgICAgICAgICAgICAgIGZyYXNlW29dID0gdGVtcDsKICAgICAgICAgICAgfQogICAgICAgIH0gICAgCiAgICB9CgogICAgLy8gSW1wcmltaW5kbyBuYSB0ZWxhICAgIAogICAgY2hhciBjYXJhY3RlckF0dWFsID0gZnJhc2VbMV07CiAgICBpbnQgY29udGFkb3IgPSAwOwogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gc3RybGVuKGZyYXNlKTsgaSsrKSB7CiAgICAgICAgaWYgKGZyYXNlW2ldICE9ICcgJykgewogICAgICAgICAgICBpZiAoZnJhc2VbaV0gPT0gY2FyYWN0ZXJBdHVhbCkgewogICAgICAgICAgICAgICAgY29udGFkb3IrKzsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGlmIChjYXJhY3RlckF0dWFsICE9ICcgJykgewogICAgICAgICAgICAgICAgICAgIHByaW50ZigiJWMgPSAlZFxuIiwgY2FyYWN0ZXJBdHVhbCwgY29udGFkb3IpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY29udGFkb3IgPSAxOwogICAgICAgICAgICAgICAgY2FyYWN0ZXJBdHVhbCA9IGZyYXNlW2ldOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgCiAgICByZXR1cm4gMDsKfQo=