A1522 | 能量场
来源官方 / 2023
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
在一个遥远的星球上,存在一个神秘的能量场。这个能量场是一个 $N \times M$ 的矩形,每一个单元都是一个能量单元。勇敢的探险家AC狗获得了一种特殊的装置,可以在这个能量场中移动。但这个装置有一个特点,只能在任意一步向相邻的四个能量单元移动(上、下、左、右)。
AC狗从一个能量单元 $A$ $(R_1, C_1)$ 开始,他的目的是要在恰好 $T$ 步到达另一个指定的能量单元 $B$ $(R_2, C_2)$。你能帮助他计算出有多少种不同的路径可以达到目标吗?其中不同的路径判断条件为 $T$ 步中至少存在一次移动的方向不同。
PS:在能量场中,. 表示该能量单元是安全的,而 * 表示该能量单元存在危险,AC狗不能进入。AC狗在移动的过程中,必须确保不会进入危险的能量单元,并且他的移动范围不能超出能量场的边界。
AC狗从一个能量单元 $A$ $(R_1, C_1)$ 开始,他的目的是要在恰好 $T$ 步到达另一个指定的能量单元 $B$ $(R_2, C_2)$。你能帮助他计算出有多少种不同的路径可以达到目标吗?其中不同的路径判断条件为 $T$ 步中至少存在一次移动的方向不同。
PS:在能量场中,. 表示该能量单元是安全的,而 * 表示该能量单元存在危险,AC狗不能进入。AC狗在移动的过程中,必须确保不会进入危险的能量单元,并且他的移动范围不能超出能量场的边界。
输入格式
第一行包含三个正整数 $N$、$M$、$T$,表示能量场的行数和列数,以及需要在恰好 $T$ 步到达目标能量单元。
接下来的 $N$ 行,每行包含一个长度为 $M$ 的字符串,描述该行的能量场状态。其中. 表示安全的能量单元,* 表示危险的能量单元。
最后一行 $4$ 个整数 $R_1,C_1,R_2,C_2$。
接下来的 $N$ 行,每行包含一个长度为 $M$ 的字符串,描述该行的能量场状态。其中. 表示安全的能量单元,* 表示危险的能量单元。
最后一行 $4$ 个整数 $R_1,C_1,R_2,C_2$。
输出格式
输出一个整数,表示从起始能量单元 $A$ 恰好在 $T$ 步到达目标能量单元 $B$ 的不同路径输出一个整数,表示从起始能量单元 $A$ 恰好在 $T$ 步到达目标能量单元 $B$ 的不同路径数。
答案可能非常大,需要对 $998244353$ 取模再输出。
答案可能非常大,需要对 $998244353$ 取模再输出。
输入输出样例
输入 #1
4 5 6 ...*. ...*. ..... ..... 1 3 1 5
输出 #1
1
输入 #2
4 5 8 ...*. ...*. ..... ..... 1 3 1 5
输出 #2
18
在 $6$ 步内从 $(1,3)$ 走到 $(1,5)$ 的方法只有一种。
但是 $8$ 步之内有许许多多的路径:
$(1,3) -> (1,2) -> (1,3) -> ... -> (1,5)$
$(1,3) -> (2,3) -> (1,3) -> ... -> (1,5)$
$(1,3) -> (2,3) -> (3,3) -> (2,3) -> ... -> (1,5)$
...总共有18种路径
【数据范围】
对于 $20\%$ 的数据,$1\leq N,M \leq 10, 1 \le t \le 20$
对于 $50\%$ 的数据,$1\leq N,M \leq 20, 1 \le t \le 50$
对于 $100\%$ 的数据,$1\leq N,M \leq 100, 1 \le t \le 200$
但是 $8$ 步之内有许许多多的路径:
$(1,3) -> (1,2) -> (1,3) -> ... -> (1,5)$
$(1,3) -> (2,3) -> (1,3) -> ... -> (1,5)$
$(1,3) -> (2,3) -> (3,3) -> (2,3) -> ... -> (1,5)$
...总共有18种路径
【数据范围】
对于 $20\%$ 的数据,$1\leq N,M \leq 10, 1 \le t \le 20$
对于 $50\%$ 的数据,$1\leq N,M \leq 20, 1 \le t \le 50$
对于 $100\%$ 的数据,$1\leq N,M \leq 100, 1 \le t \le 200$
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?