介绍
您最近接受了Pretty Good Software Company的工作机会。您对办公室的大小很满意,但是您有吗最大的办公室?当您停下脚步时,仅盯着同事的办公室很难说清楚。解决这个问题的唯一方法是检查建筑物的蓝图。
你的任务
编写一个程序,脚本或功能,以制定建筑物的平面图并指出您的办公室是否最大。平面图很容易阅读,因为建筑物是n by n正方形。
输入将包含n + 1个 \n
定界线。第一行的数字为n。接下来的n行将是建筑物的平面图。一个简单的示例输入:
6
......
. . .
.X . .
. . .
. . .
......
平面图的规则如下:
.
(ASCII 46)将用于表示墙壁。(空格[ASCII 32])将用于表示开放空间。
- 您用
X
(ASCII 88)表示。你在办公室 - 平面图将是n行,每行包含n个字符。
- 建筑物四周四面都是墙。这意味着输入的第二行(平面布置图的第一行)和输入的最后一行均为
.
s。这也意味着每条平面图行的第一个和最后一个字符将是.
s。 - 办公室的大小定义为相邻空间的总和(通过在四个方向(N,S,E,W上移动而无需穿过墙壁而连续))。
- 为了办公室的大小,代表您的X计为
(开放空间)
- 4 <= n <= 80
您应该输出您的办公室是否严格大于其他所有办公室。输出可以是在您选择的编程语言中明确表示True或False并遵循零,null和空表示False的标准约定的任何内容。真实意味着您的办公室绝对是最大的。
以上输入的样本输出:
1
因为您的办公室是8平方英尺,而另一个办公室是4平方英尺。
I / O准则
- 可以从stdin读取输入,然后将输出应答到stdout。
要么
- 输入可以是函数的单个字符串参数,答案是该函数的返回值。
常问问题
- 整个建筑由墙壁和办公室组成。
- 大楼只有一层
- 输入中肯定有一个X,但不能保证有任何空格。您可以拥有一个1x1的办公室,而建筑物的其余部分是墙壁(您拥有最大的办公室!万岁!)。
其他例子
10
..........
. . . .
. . . .
. . . .
. .. . .
.. .
..........
. X .
. .
..........
这里有3个办公室,您的南边办公室是矩形的,西北边的办公室是三角形的,而东北边的办公室奇怪地变形了,但比您的大。输出应为False。
编写最短的代码是一件很困难的事情,快乐的打高尔夫球!
X
在输入中添加允许的最大数量。:)