codeforces#P1366E. Two Arrays

    ID: 31225 远端评测题 2000ms 256MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>binary searchbrute forcecombinatoricsconstructive algorithmsdptwo pointers*2100

Two Arrays

Description

You are given two arrays $a_1, a_2, \dots , a_n$ and $b_1, b_2, \dots , b_m$. Array $b$ is sorted in ascending order ($b_i < b_{i + 1}$ for each $i$ from $1$ to $m - 1$).

You have to divide the array $a$ into $m$ consecutive subarrays so that, for each $i$ from $1$ to $m$, the minimum on the $i$-th subarray is equal to $b_i$. Note that each element belongs to exactly one subarray, and they are formed in such a way: the first several elements of $a$ compose the first subarray, the next several elements of $a$ compose the second subarray, and so on.

For example, if $a = [12, 10, 20, 20, 25, 30]$ and $b = [10, 20, 30]$ then there are two good partitions of array $a$:

  1. $[12, 10, 20], [20, 25], [30]$;
  2. $[12, 10], [20, 20, 25], [30]$.

You have to calculate the number of ways to divide the array $a$. Since the number can be pretty large print it modulo 998244353.

The first line contains two integers $n$ and $m$ ($1 \le n, m \le 2 \cdot 10^5$) — the length of arrays $a$ and $b$ respectively.

The second line contains $n$ integers $a_1, a_2, \dots , a_n$ ($1 \le a_i \le 10^9$) — the array $a$.

The third line contains $m$ integers $b_1, b_2, \dots , b_m$ ($1 \le b_i \le 10^9; b_i < b_{i+1}$) — the array $b$.

In only line print one integer — the number of ways to divide the array $a$ modulo 998244353.

Input

The first line contains two integers $n$ and $m$ ($1 \le n, m \le 2 \cdot 10^5$) — the length of arrays $a$ and $b$ respectively.

The second line contains $n$ integers $a_1, a_2, \dots , a_n$ ($1 \le a_i \le 10^9$) — the array $a$.

The third line contains $m$ integers $b_1, b_2, \dots , b_m$ ($1 \le b_i \le 10^9; b_i < b_{i+1}$) — the array $b$.

Output

In only line print one integer — the number of ways to divide the array $a$ modulo 998244353.

Samples

6 3
12 10 20 20 25 30
10 20 30
2
4 2
1 3 3 7
3 7
0
8 2
1 2 2 2 2 2 2 2
1 2
7