Logo HelloWorld信息学奥赛题库

少儿编程

时间限制:1 s 空间限制:256 MB

#12751. 沙滩⾯积

统计

题目描述

我们获得了⼀幅陆地和⽔域情况的卫星照⽚,照⽚可以看成是⼀个n⾏m列的矩形,矩形中的每个格⼦要么是陆地(⽤半⾓点号.表⽰),要么是⽔域(⽤井号#表⽰)。
虽然卫星照⽚可以清楚地辨别出陆地和⽔域,但陆地的具体类型却并不明确。现在我们了解到,对于⼀块是⽔域的⽅格,它向上、下、左、右四个⽅向 k 步之内可达的陆地格⼦,均会形成沙滩。例如,下图展⽰了k=2的情况,蓝⾊的格⼦代表⽔域,标为黄⾊的陆地格⼦是沙滩:

avatar

你的任务是根据卫星照⽚计算出属于 “沙滩” 格⼦的数量。注意:卫星照⽚只拍摄了包含⽔域的部分,⽔域附近的沙滩可能出现在卫星照⽚边界之外。你可以假设卫星照⽚之外不存在任何⽔域.

输入格式

输⼊的第⼀⾏是空格分隔的三个整数 n, m 和 k,代表拍摄的卫星照⽚共有 n ⾏ m 列,以及形成沙滩的范 围 k。 接下来 n ⾏,每⾏⼀个字符串。字符串的长度恰好是 m,代表卫星照⽚的⼀⾏,其中:
井号 # 表⽰⼀⽚⽔域;
半⾓点号 . 表⽰⼀⽚陆地。

输出格式

输出⼀⾏⼀个整数,代表沙滩格⼦的数量。

样例数据

input

5 10 3
.........#
..########
.........#
#....###.#
..####...#

output

103

数据规模

对于 40% 的数据,满⾜ n = m = 1;
对于 100% 的数据,满⾜ 1 ≤ n, m ≤ 100; 1 ≤ k ≤ 10。