Technocup 2020 - Elimination Round 3
E
Arson In Berland Forest
Codeforces
2200
原题
← D2F1 →
翻译中…

The Berland Forest can be represented as an infinite cell plane. Every cell contains a tree. That is, contained before the recent events.

翻译中…

A destructive fire raged through the Forest, and several trees were damaged by it. Precisely speaking, you have a $n \times m$ rectangle map which represents the damaged part of the Forest. The damaged trees were marked as "X" while the remaining ones were marked as ".". You are sure that all burnt trees are shown on the map. All the trees outside the map are undamaged.

翻译中…

The firemen quickly extinguished the fire, and now they are investigating the cause of it. The main version is that there was an arson: at some moment of time (let's consider it as $0$) some trees were set on fire. At the beginning of minute $0$, only the trees that were set on fire initially were burning. At the end of each minute, the fire spread from every burning tree to each of $8$ neighboring trees. At the beginning of minute $T$, the fire was extinguished.

翻译中…

The firemen want to find the arsonists as quickly as possible. The problem is, they know neither the value of $T$ (how long the fire has been raging) nor the coordinates of the trees that were initially set on fire. They want you to find the maximum value of $T$ (to know how far could the arsonists escape) and a possible set of trees that could be initially set on fire.

翻译中…

Note that you'd like to maximize value $T$ but the set of trees can be arbitrary.

翻译中…

Input

翻译中…

The first line contains two integer $n$ and $m$ ($1 \le n, m \le 10^6$, $1 \le n \cdot m \le 10^6$) — the sizes of the map.

翻译中…

Next $n$ lines contain the map. The $i$-th line corresponds to the $i$-th row of the map and contains $m$-character string. The $j$-th character of the $i$-th string is "X" if the corresponding tree is burnt and "." otherwise.

翻译中…

It's guaranteed that the map contains at least one "X".

翻译中…

Output

翻译中…

In the first line print the single integer $T$ — the maximum time the Forest was on fire. In the next $n$ lines print the certificate: the map ($n \times m$ rectangle) where the trees that were set on fire are marked as "X" and all other trees are marked as ".".

翻译中…

样例

Input #1
3 6
XXXXXX
XXXXXX
XXXXXX
Output #1
1
......
.X.XX.
......
InputCopy OutputCopy
Input #2
10 10
.XXXXXX...
.XXXXXX...
.XXXXXX...
.XXXXXX...
.XXXXXXXX.
...XXXXXX.
...XXXXXX.
...XXXXXX.
...XXXXXX.
..........
Output #2
2
..........
..........
...XX.....
..........
..........
..........
.....XX...
..........
..........
..........
InputCopy OutputCopy
Input #3
4 5
X....
..XXX
..XXX
..XXX
Output #3
0
X....
..XXX
..XXX
..XXX
InputCopy OutputCopy
题目信息
题号
1227E
时间限制
2 s
内存限制
512 MB
标签
二分
图论
最短路

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。