Декодирование длины серии на месте?

Для данной закодированной по длине серии строки, скажем, «A3B1C2D1E1», декодируйте строку на месте. Ответ для закодированной строки - «AAABCCDE». Предположим, что закодированный массив достаточно велик, чтобы вместить декодированную строку, т.е. вы можете предположить, что размер массива = MAX [длина (encodedstirng), length (decodedstring)].

Это не кажется тривиальным, поскольку простое декодирование A3 как «AAA» приведет к перезаписи «B» исходной строки.

Кроме того, нельзя предполагать, что декодированная строка всегда больше, чем кодированная строка. Например: закодированная строка - «A1B1», декодированная строка - «AB». Есть какие-нибудь мысли?

И это всегда будет буквенно-цифровая пара, т.е. вас не попросят преобразовать 0515 в 0000055555

8
задан Aaron McDaid 8 January 2012 в 04:54
поделиться