public static void Main()
Console.WriteLine(CompressString("aaabccccdd"));
Console.WriteLine(CompressString("yyyyyzzzzzzzzzz"));
Console.WriteLine(CompressString("abcd"));
Console.WriteLine(CompressString("hhhccchhhccc"));
static string CompressString(string orginalInput)
if (string.IsNullOrWhiteSpace(orginalInput))
string input = string.Join("", orginalInput.Trim().ToLower().Split(' '));
StringBuilder Result = new StringBuilder();
char currentChar = input[0];
for (int i = 1; i < input.Length; i++)
if (input[i] == currentChar)
Result.Append((count == 1) ? currentChar : $"{currentChar}{count}");
Result.Append((count == 1) ? currentChar : $"{currentChar}{count}");
return Result.ToString();