有一天,亲爱的蔡徐坤坤坤同学捡到一张纸,上面写着一些题目.他看见↓一张地图,可是由于他练习了两年半,十分虚弱和劳累,所以没有力气思考了。现在他想知道这幅地图上面的L型、C型和S型区域到底有多少、是什么样的,所以找到聪明的小黑子你求助。如果你答对了,你将会AC得到他的唱、跳、Rap、篮球专属教学.以下是他找到的地图↓.
一张矩形的卫星地图,有M行N列。行列中的0表示空地,1表示有建筑。有3种类型的建筑:
L型: 仅在一行上占据连续的若干个格子,长度至少为2,至多为N.
C型:仅在一列上占据连续的若干个格子,长度至少为2,至多为M.
S型:仅占据单个格子.
在同一行上或者同一列上可以出现多个建筑。
不同的建筑不会相邻,相邻是指上,下,左,右,以及左上,左下,右上,右下等八个方向。
求出不同类型的建筑的数量及长度。
第1行:2个整数M和N
接下来M行,每行N个0或1,数字之间由空格分开
第1行:先输出S,再输出1个整数表示S型建筑的数量,如果没有,则不输出。
接下来若干行,每行依次表示L型建筑的长度以及该长度的建筑数量,按长度递增的顺序输出,中间用一个空格分开,如果没有L型建筑,则不输出。
接下来若干行,每行依次表示C型建筑的长度以及该长度的建筑数量,按长度递增的顺序输出. 中间用一个空格分开,如果没有C型建筑,则不输出。
12 12
0 0 0 0 0 0 0 0 0 0 0 1
0 1 1 1 1 1 0 0 0 0 0 1
0 0 0 0 0 0 0 1 0 0 0 1
0 1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0
0 1 0 1 1 1 1 1 1 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0
0 1 1 0 0 0 0 0 0 0 0 0
S 1
L 2 1 //注意在L,2,1之间各有1个空格,下同。
L 5 1
L 6 1
C 3 2
C 4 1
1≤M,N≤1000