B3809 [语言月赛 202307] Three-View Projection

题目描述

> 全文与 $x, y, z$ 轴/方向有关的内容均基于以下的 $x, y, z$ 轴、位置及观测方向。观测者站在如图所示的位置,正在向着 $y$ 轴(绿线)正方向(箭头方向)观测。 > ![](https://cdn.luogu.com.cn/upload/image_hosting/05erek0j.png) 现在在地面上有一个长、宽(沿 $x, y$ 轴延展的长度)为 $n \text{ cm}, m \text{ cm}$ 的长方形区域。我们将这片区域划分为 $n \times m$ 个小格子。每个小格子中可以放置一个边长为 $1 \text{ cm}$ 的小正方体。 我们使用一个整数二元组 $(x, y)$ 来表示一个格子在空间中的位置,其代表从左往右数第 $x$ 个,从前往后数第 $y$ 个格子。 ![](https://cdn.luogu.com.cn/upload/image_hosting/uz60cc6x.png) 例如,上图展示的 $3 \times 4$ 区域中,按照观测者的位置,可以发现红蓝线($x, z$ 轴)所在的面为前面,蓝绿线($y, z$ 轴)所在的面为左面,红绿线($x, y$ 轴)所在的面为下面。五个小正方体的位置分别为 $(1, 1), (1, 3), (3, 1), (3, 3), (3, 4)$。 三视图是观测者从上面(从上往下)、左面(从左往右)、正面(从前往后)三个不同角度观察同一个空间几何体而画出的图形。 ![](https://cdn.luogu.com.cn/upload/image_hosting/w7i3tmla.png) ![](https://cdn.luogu.com.cn/upload/image_hosting/vsazjs23.png) 例如,以上是示例区域的三视图。 现在,给定一个区域及其中的正方体排布情况,请你帮助计算出这个区域的三视图。

输入格式

输入共 $n + 1$ 行。 第一行为两个整数 $n, m$,代表长方形区域的长、宽。 接下来 $n$ 行,每行 $m$ 个整数。其中第 $x$ 行第 $y$ 列的整数 $a _ {x, y}$ 代表 $(x, y)$ 处格子的情况,若 $a _ {x, y} = 1$,代表该格子有小正方体;否则,代表该格子没有小正方体。

输出格式

输出共 $2 + m$ 行。 第一行为 $n$ 个整数,代表**自左至右**正视图的情况。如果正视图中某个位置有填充,则输出 $1$,否则输出 $0$。同一行整数之间两两以一个空格隔开。 第二行为 $m$ 个整数,代表**自后至前**左视图的情况。如果左视图中某个位置有填充,则输出 $1$,否则输出 $0$。同一行整数之间两两以一个空格隔开。 接下来 $m$ 行,每行 $n$ 个整数,代表**自后至前自左至右**俯视图的情况。如果俯视图中某个位置有填充,则输出 $1$,否则输出 $0$。同一行整数之间两两以一个空格隔开。 **以上方向均基于观测者初始站立位置及方向。如果对输出的顺序有疑惑,请参照样例辅助理解。**

说明/提示

### 样例 1 解释 样例 1 即为题目中的示例。 ![](https://cdn.luogu.com.cn/upload/image_hosting/w8y7afxe.png) ### 数据规模与约定 对于 $100\%$ 的数据,保证 $1 \leq n, m \leq 200$,$0 \leq a _ {x, y} \leq 1$。 | 测试点编号 | $n$ | $m$ | $a _ {x, y}$ | | :-----------: | :-----------: | :-----------: | :-----------: | | $1$ | $= 1$ | $= 1$ | 无特殊限制 | | $2 \sim 4$ | $\leq 10$ | $\leq 10$ | 无特殊限制 | | $5 \sim 6$ | $\leq 200$ | $= 1$ | 无特殊限制 | | $7$ | $\leq 200$ | $\leq 200$ | $= 1$ | | $8 \sim 10$ | $\leq 200$ | $\leq 200$ | 无特殊限制 |