AT_abc309_h [ABC309Ex] Simple Path Counting Problem
题目描述
有一个 N 行 M 列的网格。我们将从上往下的第 i 行、从左往右的第 j 列的格子称为 (i,j)。
给定一个长度为 K 的整数序列 A=(A1,A2,…,AK) 和一个长度为 L 的整数序列 B=(B1,B2,…,BL)。
对于所有满足 1≤i≤K,1≤j≤L 的整数对 (i,j),请解决以下问题,并将所有答案的总和对 998244353 取模后输出。
- 一开始有一个棋子放在 (1,Ai)。请计算用以下操作将棋子移动到 (N,Bj) 的方案数。
- 假设当前棋子在 (p,q),可以将棋子移动到 (p+1,q−1)、(p+1,q) 或 (p+1,q+1) 中的任意一个格子,但不能移出网格。
输入格式
输入按以下格式从标准输入给出。
N M K L A1 A2 … AK B1 B2 … BL
输出格式
请输出答案。
输入输出样例 #1
输入 #1
3 4 1 2
1
1 2
输出 #1
4
输入输出样例 #2
输入 #2
5 8 4 5
3 1 4 1
2 7 1 8 2
输出 #2
137
输入输出样例 #3
输入 #3
883671387 87719 10 12
86879 64174 47274 41688 17713 50897 53989 7210 30894 5714
60358 28835 48036 48450 67149 36558 35929 69025 77539 19195 60762 60721
输出 #3
941873621
说明/提示
限制条件
- 1≤N≤109
- 1≤M,K,L≤105
- 1≤Ai,Bj≤M
样例解释 1
当 (i,j)=(1,1) 时,棋子的移动方式有如下 2 种:
- (1,1)→(2,1)→(3,1)
- (1,1)→(2,2)→(3,1)
当 (i,j)=(1,2) 时,棋子的移动方式有如下 2 种:
- (1,1)→(2,1)→(3,2)
- (1,1)→(2,2)→(3,2)
因此,答案为 2+2=4。
由 ChatGPT 4.1 翻译