有一张 n \times m 的网格图,每个格子上都可能会有激光炸弹、障碍之中的某一个东西。激光炸弹引爆后会朝上下左右四个方向发射激光,激光的射程可到无限远。激光可以引爆激光炸弹,可以穿透空的格子,但不能穿透障碍。
现在引爆了其中一枚激光炸弹,因引爆而发射的激光可能会继续引爆其他炸弹,进而引起连锁反应。你需要求出最终一共有多少枚激光炸弹被引爆了(包括最开始引爆的那枚)。
第一行输入两个正整数 n,m 。
接下来 n 行,每行输入一个长度为 m 的字符串。
第 i 行第 j 个字符为 .
、B
、X
其中之一,分别表示空格子、激光炸弹、障碍。
最后一行输入两个正整数 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