#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define LONG 80
#define SHORT 20
void longtext(char longtxt[LONG], char shorttxt[SHORT])
{
int i, j=0, count=0;
char letter;
for (i = 0; i <= strlen(longtxt); ++i)
{
if (i == 0)
{
letter = longtxt[i];
++count;
}
else if (letter == longtxt[i])
++count;
else
{
shorttxt[j] = letter;
snprintf(&shorttxt[j + 1],2,"%d",count);
j += 2;
count = 1;
letter = longtxt[i];
}
}
}
int main()
{
char longtxt[LONG] = "aaabbdddd",shorttxt[SHORT];
longtext(longtxt,shorttxt);
printf("%s", shorttxt);
}
ICAgICNpbmNsdWRlIDxzdGRpby5oPgogICAgI2luY2x1ZGUgPHN0ZGxpYi5oPgogICAgI2luY2x1ZGUgPHN0cmluZy5oPgogICAgI2RlZmluZSBMT05HIDgwCiAgICAjZGVmaW5lIFNIT1JUIDIwCiAgICB2b2lkIGxvbmd0ZXh0KGNoYXIgbG9uZ3R4dFtMT05HXSwgY2hhciBzaG9ydHR4dFtTSE9SVF0pCiAgICB7CiAgICAgICAgaW50IGksIGo9MCwgY291bnQ9MDsKICAgICAgICBjaGFyIGxldHRlcjsKICAgICAgICBmb3IgKGkgPSAwOyBpIDw9IHN0cmxlbihsb25ndHh0KTsgKytpKQogICAgICAgIHsKICAgICAgICAgICAgaWYgKGkgPT0gMCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgbGV0dGVyID0gbG9uZ3R4dFtpXTsKICAgICAgICAgICAgICAgICsrY291bnQ7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSBpZiAobGV0dGVyID09IGxvbmd0eHRbaV0pCiAgICAgICAgICAgICAgICArK2NvdW50OwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHNob3J0dHh0W2pdID0gbGV0dGVyOwogICAgICAgICAgICAgICAgc25wcmludGYoJnNob3J0dHh0W2ogKyAxXSwyLCIlZCIsY291bnQpOwogICAgICAgICAgICAgICAgaiArPSAyOwogICAgICAgICAgICAgICAgY291bnQgPSAxOwogICAgICAgICAgICAgICAgbGV0dGVyID0gbG9uZ3R4dFtpXTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGludCBtYWluKCkKICAgIHsKICAgICAgICBjaGFyIGxvbmd0eHRbTE9OR10gPSAiYWFhYmJkZGRkIixzaG9ydHR4dFtTSE9SVF07CiAgICAgICAgbG9uZ3RleHQobG9uZ3R4dCxzaG9ydHR4dCk7CiAgICAgICAgcHJpbnRmKCIlcyIsIHNob3J0dHh0KTsKICAgIH0=