题库练习 Crop
← 上一题 下一题 →

A7708 | Crop

时间限制2s
内存限制1024MB
通过 / 提交0/0

题目描述

有一张高度为 $H$ 像素、宽度为 $W$ 像素的黑白图像。第 $i$ 行(从上往下数)第 $j$ 列(从左往右数)的像素颜色由字符 $C_{i,j}$ 表示,其中 . 表示白色,# 表示黑色。

从该图像的上、下、左、右四条边界开始,依次删除所有像素均为白色的行或列。具体按以下顺序执行操作:

1. 当图像最上方的一行全部为白色时,重复删除最上方的一行;
2. 当图像最下方的一行全部为白色时,重复删除最下方的一行;
3. 当图像最左侧的一列全部为白色时,重复删除最左侧的一列;
4. 当图像最右侧的一列全部为白色时,重复删除最右侧的一列。

输出处理后的图像。

给定的图像中至少包含一个黑色像素。

输入格式

输入从标准输入中按以下格式给出:

> $H$ $W$
> $C_{1,1}C_{1,2}\ldots C_{1,W}$
> $C_{2,1}C_{2,2}\ldots C_{2,W}$
> $\vdots$
> $C_{H,1}C_{H,2}\ldots C_{H,W}$

输出格式

以以下格式输出处理后的图像。
其中,$h$ 和 $w$ 分别表示处理后图像的高度和宽度(单位:像素)。
$c_{i,j}$ 表示第 $i$ 行(从上往下数)第 $j$ 列(从左往右数)处像素的颜色字符;若该像素为白色,则 $c_{i,j}$ 必须为 .;若为黑色,则必须为 #

> $c_{1,1}c_{1,2}\ldots c_{1,w}$
> $c_{2,1}c_{2,2}\ldots c_{2,w}$
> $\vdots$
> $c_{h,1}c_{h,2}\ldots c_{h,w}$

输入输出样例

输入 #1
4 5
.....
..#..
.###.
.....
输出 #1
.#.
###
输入 #2
3 4
#...
....
...#
输出 #2
#...
....
...#
输入 #3
5 6
......
......
...#..
......
......
输出 #3
#
C++ 编辑器
输入
输出