3067 - 激光炸弹(laser.cpp) 待补充数据

题目描述

有一张 n \times m 的网格图,每个格子上都可能会有激光炸弹、障碍之中的某一个东西。激光炸弹引爆后会朝上下左右四个方向发射激光,激光的射程可到无限远。激光可以引爆激光炸弹,可以穿透空的格子,但不能穿透障碍。

现在引爆了其中一枚激光炸弹,因引爆而发射的激光可能会继续引爆其他炸弹,进而引起连锁反应。你需要求出最终一共有多少枚激光炸弹被引爆了(包括最开始引爆的那枚)。

输入

第一行输入两个正整数 n,m

接下来 n 行,每行输入一个长度为 m 的字符串。

i 行第 j 个字符为 .BX 其中之一,分别表示空格子、激光炸弹、障碍。

最后一行输入两个正整数 x,y ,表示最开始引爆位于第 x 行第 y 列的那枚激光炸弹。保证第 x 行第 y 列的格子上一定有一枚激光炸弹。

输出

输出最终被引爆的激光炸弹的总个数。

样例

输入

3 4
BX.B
.XBX
B.BX
1 1

输出

4
说明

【数据范围】

对于 30\% 的数据,n,m≤5

对于 60\% 的数据,n,m≤30

对于另外 20\% 的数据,保证网格图中不存在障碍。

对于 100\% 的数据,n,m≤1000

来源

2021-2022年中山市东区第一届义务教育段学生信息学邀请赛 T4

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 0
通过人数 0
金币数量 2 枚
难度 基础


上一题 下一题