Я готовлюсь к конкурсу информатики, выполняя задачи прошлых конкурсов. Большинство из них довольно просты, но этот вызывает у меня сомнения ... кажется простым, но я просто не могу этого сделать.
Если у вас есть строка из нулей и единиц:
100111010001111100101010
Какой будет код, который будет принимать это в качестве входных данных, а затем выводить это:
1:1 2:0 3:1 1:0 1:1 3:0 5:1 2:0 1:1 1:0 1:1 1:0
Где цифра слева от каждого двоеточия - это число раз, которое появляется цифра после двоеточия.
Итак, еще один пример ... ввод:
1100011
Будет выводить:
2:1 3:0 2:1
В зависимости от проблемы это похоже на алгоритм, используемый для сжатия факсимильных сообщений.
Ответ на java был бы лучшим, но все, что я действительно ищу, это псевдокод или даже мысли о том, как это сделать.
Заранее спасибо.