T311446 卫星地图

题目背景

有一天,亲爱的~~蔡徐坤~~**坤坤同学**捡到一张纸,上面写着一些题目.他看见↓一张地图,可是由于他练习了两年半,十分虚弱和劳累,所以没有力气思考了。现在他想知道这幅地图上面的$\text{L}$型、$\text{C}$型和$\text{S}$型区域到底有多少、是什么样的,所以找到聪明的~~小黑子~~**你**求助。如果你答对了,你将会**AC**~~得到他的唱、跳、$\text{Rap}$、篮球专属教学~~.以下是他找到的地图↓.

题目描述

一张矩形的卫星地图,有$M$行$N$列。行列中的$0$表示空地,$1$表示有建筑。有$3$种类型的建筑: $\text{L}$型: 仅在一行上占据连续的若干个格子,长度至少为$2$,至多为$N$. $\text{C}$型:仅在一列上占据连续的若干个格子,长度至少为$2$,至多为$M$. $\text{S}$型:仅占据单个格子. 在同一行上或者同一列上可以出现多个建筑。 不同的建筑不会相邻,相邻是指**上,下,左,右**,以及**左上,左下,右上,右下**等八个方向。 求出不同类型的建筑的数量及长度。

输入格式

第$1$行:$2$个整数$M$和$N$ 接下来$M$行,每行$N$个$0$或$1$,数字之间由空格分开

输出格式

第$1$行:先输出S,再输出$1$个整数表示$\text{S}$型建筑的数量,如果没有,则不输出。 接下来若干行,每行依次表示$\text{L}$型建筑的长度以及该长度的建筑数量,按长度递增的顺序输出,中间用一个空格分开,如果没有$\text{L}$型建筑,则不输出。 接下来若干行,每行依次表示$\text{C}$型建筑的长度以及该长度的建筑数量,按长度递增的顺序输出. 中间用一个空格分开,如果没有$\text{C}$型建筑,则不输出。

说明/提示

$1 \le M,N \le 1000$