Woburn Challenge 1996

Problem 2: Row and Column Compressions

To represent an m by n table of capital letters such as

A B B B B
A A A A C
B A A C C
B B C C C

in a text file we could either type out all (m*n) characters or figure out some way to compress the data to a smaller size. Two ways we could do this are:

Column Compression
We could go down each column, left to right, and for consecutive repeated characters within a column replace them by a single occurence of that character preceded by a number indicating how many of that character there are. For this example we have, in the first column, AABB which becomes 2A2B. In the 2nd column we get B2AB and so on... Note that we have dropped the 1s from 1B2A1B and assumed there is only one occurence if there is no number preceding the letter. Thus compression by this method gives 2A2BB2ABB2ACBA2CB3C.

Row Compression
Likewise, we could compress each row going from left to right in the same fashion to get A4B4ACB2A2C2B3C in the above example.

Your task is to convert a column compression into a row compression given the size of the table: m, the number of rows and n, the number of columns.

Input

In the data file there are 5 data sets. The first line of each data set contains m and n, the height and width of the table. Both m and n will be integers from 1 to 10. The second line of each data set will contain a column-compressed representation of the table.

Output

For each data set output the row-compressed representation of the table.

Sample Input

4 5
2A2BB2ABB2ACBA2CB3C
3 3
3W3W3W

(and 3 more data sets)

Sample Output

A4B4ACB2A2C2B3C
3W3W3W

All Submissions
Best Solutions


Point Value: 7
Time Limit: 2.00s
Memory Limit: 16M
Added: Sep 29, 2008

Languages Allowed:
C++03, PAS, C, HASK, ASM, RUBY, PYTH2, JAVA, PHP, SCM, CAML, PERL, C#, C++11, PYTH3

Comments (Search)

It's quiet in here...