AT_arc112_d [ARC112D] Skate
题目描述
给定一个 $h$ 行 $w$ 列的网格图,图中的每个格子不是`#`就是`.`。
若当前处于静止状态,可以向四个方向中的任意一个移动,直到到达网格图边界或到达一个为`#`的格子时才可停止。
将图中上起第 $r$ 行左起第 $c$ 列的格子记为 $(r,c)$。“从 $(r,c)$ 来看,可以满足目的”的条件是:从 $(r,c)$ 出发,通过以上形式的移动,在移动若干次以后能够访问到图中的所有格子。
问最少改变多少个`.`格子为`#`格子才能满足:从任意一个格子来看,都能满足目的?
输入格式
第一行输入两个整数 $h,w$。
接下来 $h$ 行,每行一个长度为 $w$,仅有`#`和`.`的字符串。
输出格式
一行一个整数,最少需要改变的格子数量。
说明/提示
#### 数据规模与约定
$2\le h,w\le 1000$。
#### 样例 #1 解释
最初,从 $(1,1)$ 开始并经过 $(2,2)$ 是不可能的。 满足目标的一种方法是将滑冰场更改如下:
```
.........
........#
.........
```