QOJ.ac

QOJ

Limite de temps : 2 s Limite de mémoire : 256 MB Points totaux : 100

#7349. UFO 矩形

Statistiques

Yandex 有一个专门处理各国政府特殊订单的秘密部门。最近,他们收到了一份来自一个小香蕉共和国的消息,该国正遭受外星人的入侵!

大家都听说过麦田怪圈:那些有时出现在土豆田或麦田里的奇怪圆形图案,它们可能是也可能不是由 UFO 留下的。在香蕉共和国的情况则有些不同:这些讨厌的外星人留下的不是麦田怪圈,而是由被压扁的香蕉植株组成的矩形。现在,他们请求 Yandex 帮助调查外星人最近在地球上的所作所为。

你拥有一张香蕉田的卫星照片,照片被划分为若干个单元格,每个单元格要么是完好的,要么是被压扁的。最好的 UFO 研究人员认为,外星人倾向于通过压扁大小为 $r \times c$ 的矩形边框内的所有单元格来绘制矩形,其中 $r$ 和 $c$ 均至少为 3。这些边框从不共享单元格,而且出于某种奇怪的原因,没有两个边框在两条或更多条边上接触。

请帮助 Yandex 秘密部门识别出所有由外星人创建的矩形,你或许能拯救地球免受外星人的入侵!

输入格式

输入的第一行包含两个整数 $n$ 和 $m$ ($3 \le n, m \le 2000$),表示照片的尺寸。

接下来 $n$ 行定义了照片。每行包含 $m$ 个字符。每个字符要么是表示完好单元格的 “.”,要么是表示被压扁单元格的 “X”。

保证给定的图片对应于满足上述条件的一组矩形。

输出格式

在第一行,输出一个整数 $k$ ($k \ge 0$),表示照片中包含的被压扁矩形的数量。

在接下来的 $k$ 行中,每行输出四个整数 $r_1, c_1, r_2$ 和 $c_2$ ($1 \le r_1 < r_2 \le n, 1 \le c_1 < c_2 \le m$),分别表示矩形左上角和右下角的行号和列号。

行号从上到下从 1 到 $n$ 编号,列号从左到右从 1 到 $m$ 编号。

你可以按任意顺序输出矩形。如果存在多种可能的答案,输出其中任意一个即可。

样例

输入 1

3 3
XXX
X.X
XXX

输出 1

1
1 1 3 3

输入 2

6 7
XXXXXXX
X.XX..X
XXXXXXX
XXXXXXX
X.XX..X
XXXXXXX

输出 2

4
1 1 3 3
1 4 3 7
4 1 6 3
4 4 6 7

输入 3

10 10
..........
XXXXXXXXXX
X..XXXX..X
X..X..X..X
X..XXXX..X
X...XXXX.X
X...X..X.X
X...X..X.X
X...XXXX.X
XXXXXXXXXX

输出 3

3
2 1 10 10
3 4 5 7
6 5 9 8

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.