#P2226. Muddy Fields

Muddy Fields

题目描述

雨水浸湿了奶牛们的田地,这块田地是一个由 RRCC 列组成的矩形网格(1R501 \leq R \leq 501C501 \leq C \leq 50)。虽然雨水对草的生长有益,但也使得一些裸露的土地变得泥泞不堪。讲究的奶牛们不想在吃草时弄脏它们的蹄子。

为了防止蹄子沾上泥巴,农夫约翰需要在田地的泥泞部分铺上一些木板。每块木板的宽度为1单位,长度可以任意。每块木板必须与田地的一边平行。

农夫约翰希望用最少数量的木板覆盖所有的泥泞区域,其中某些泥泞区域可能需要多块木板来覆盖。木板不能覆盖草地,以免剥夺奶牛们的吃草区域,但木板之间可以相互重叠。

计算农夫约翰需要的最少木板数量来覆盖所有的泥泞区域。

输入格式

  • 第1行:两个用空格分隔的整数 RRCC
  • 第2到 R+1R+1 行:每行包含一个长度为 CC 的字符串,其中 '*' 表示泥泞区域,'.' 表示草地。字符串中没有空格。

输出格式

  • 第1行:一个整数,表示农夫约翰需要的木板数量。

输入样例

4 4
*.*.
.***
***.
..*.

输出样例

4

提示

输出解释:

木板1、2、3和4的放置方式如下:

1.2.

.333

444.

..2.

木板2与木板3和木板4重叠。