问题 5678 --改造工厂

5678: 改造工厂★★★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 12  解决: 9
[提交][状态][命题人:]

题目描述

作为项目经理的你需要为你的工厂建造生产设施。但在开始动工之前,你首先需要知道工厂有多大,有多少个房间。现给你工厂相关数据,你首先看到的是工厂的大小,工厂是一个矩形区域:N x M

接下来共有N行,每行M整数。这些数字代表工厂内部每个单位正方形区域的结构,它们都是从015范围内的整数。这些整数中的每一个都应该以二进制形式来看待。因为从每一个数字你就知道每个正方形区域中哪边有墙。例如,整数10的二进制形式是1010,这意味着它的北面有一堵墙,东面没有一堵墙,南面有一堵墙,西边没有一堵墙(二进制的1表示为墙壁,0表示没有墙壁)。

可以保证建筑的边缘总是有墙。输入数据一定是正确的。

你的任务是统计工厂内每个房间的面积,并从大到小输出工厂内每个房间的面积。

输入

第一行共有两个整数nm 1≤nm≤103),为工厂的大小。

接下来共n行,每行m个整数,每个整数都在0~15之间。

输出

      只有一行若干个整数(两个整数之间用一个空格分隔),为工厂内部所分割的所有房间的面积(按照从大到小输出)
样例输入
Copy
4 5
9 14 11 12 13
5 15 11 6 7
5 9 14 9 14
3 2 14 3 14
样例输出
Copy
9 4 4 2 1 

提示

来源

 

[提交][状态]