OpenJudge

12:位图文件的行程压缩

总时间限制:
8000ms
单个测试点时间限制:
2000ms
内存限制:
200000kB
描述

位图文件是按照行列存储每一个像素的颜色值,位图文件的行程压缩算法是一个简单高效的无损数据压缩算法,其基本思路是把位图文件按行看成一个线性序列,而这些数据序列组织方式分成两种情况:一种是连续的重复数据块,另一种是连续的不重复数据块。对于连续的重复数据快采用的压缩策略是用一个数字表示数据块重复的次数,然后在这个数据重数属性字节后面存储对应的数据字节本身,例如某一个文件有如下的数据序列AAAAA,在未压缩之前占用5个字节,而如果使用了压缩之后就变成了5A,只占用两个字节,对于连续不重复的数据序列,表示方法和连续的重复数据块序列的表示方法一样,只不过前面的数据重数属性字节的内容为1


输入
第一行:两个用空格分隔的非负整数m,n表示图形有m行个像素,每行有n个像素
第m行至m+1行:每行有n个用空格分隔的小于10的非负整数,表示每个像素的颜色
输出
m行,每行表示压缩后的数字序列,可能有多组数据,每组数据包含2个整数,第一个整数占3个字符宽度,右对齐,表示重复次数,第二个数字表示颜色值,占2个字符宽度,右对齐。
样例输入
9 7
0	1	0	1	1	1	0
0	1	1	1	0	1	0
0	1	1	0	0	1	0
1	1	1	1	0	1	0
1	0	0	0	0	1	1
1	0	0	1	0	0	1
1	0	1	1	0	0	1
1	1	1	1	1	1	1
0	0	0	0	0	0	0
样例输出
  1 0  1 1  1 0  3 1  1 0
  1 0  3 1  1 0  1 1  1 0
  1 0  2 1  2 0  1 1  1 0
  4 1  1 0  1 1  1 0
  1 1  4 0  2 1
  1 1  2 0  1 1  2 0  1 1
  1 1  1 0  2 1  2 0  1 1
  7 1
  7 0
来源
自编
全局题号
10724
添加于
2016-11-04
提交次数
33
尝试人数
16
通过人数
13