AT_abc378_d [ABC378D] Count Simple Paths
题目描述
给定一个 $H$ 行 $W$ 列的网格;令 $(i, j)$ 为网格中从上到下第 $i$ 行、从左到右第 $j$ 列的格子。
当 $ S_{i,j} $ 为 `.` 时,格子为空格;当 $ S_{i,j} $ 为 `#` 时,格子为障碍物。
请计算从某个空格出发,经过 $K$ 次移动(上下左右),不经过障碍物且不重复经过同一个格子的路径数。
具体地,统计满足以下条件的,长度为 $K+1$ 的序列 $((i_0,j_0),(i_1,j_1),\dots,(i_K,j_K))$
- 对于每个 $ 0\ \leq\ k\ \leq\ K $,都有 $ 1\ \leq\ i_k\ \leq\ H,\ 1\ \leq\ j_k\ \leq\ W $,且 $ S_{i_k,j_k} $ 为 `.`。
- 对于每个 $ 0\ \leq\ k\ \leq\ K-1 $,有 $ |i_{k+1}-i_k|\ +\ |j_{k+1}-j_k|\ =\ 1 $。
- 对于每个 $ 0\ \leq\ k\
输入格式
输入为标准输入,格式如下:
>$ H $ $ W $ $ K $
$ S_{1,1}S_{1,2}\dots S_{1,W} $
$ S_{2,1}S_{2,2}\dots S_{2,W} $
$\vdots$
$ S_{H,1}S_{H,2}\dots S_{H,W} $
输出格式
输出满足条件的路径数量。
### 样例1 解释
总共有两种可能的路径
- $(1,1) \rightarrow (2,1) \rightarrow (2,2)$
- $(2,2) \rightarrow (2,1) \rightarrow (1,1)$
Translated by [Route101](https://www.luogu.com.cn/user/262435).
说明/提示
- $1 \leq H, W \leq 10$
- $1 \leq K \leq 11$
- $H$, $W$, 和 $K$ 均为整数。
- 每个 $S_{i,j}$ 均为 `.` 或 `#`。
- 网格中至少存在一个格子为空格。