Processing math: 100%

3-й этап Республиканской олимпиады по информатике 2021-2022, 2 тура


Задача B. Уникальная задача

Ограничение по времени:
1 секунда
Ограничение по памяти:
512 мегабайт

Легендарный <> Арлан дал следующую задачу своим фанатам: Вам даны два массива целых чисел a и b размера n и m, соответственно. Все элементы массива b попарно различны. Вам нужно найти количество способов разделить массив a на m отрезков (l1,r1),,(lm,rm) так, чтобы выполнялись следующие условия:
  • Каждый элемент массива a принадлежит ровно одному отрезку.
  • Для каждого 1<=i<=m, число bi встречается ровно один раз среди чисел (ali,,ari) (отрезки нумеруются по возрастанию левой границы).
Так как ответ может быть слишком большим, выведите его остаток при делении на 998244353.
Формат входного файла
Первая строка содержит из два целых числа — n и m (1<=n,m<=5105). Вторая строка содержит n целых чисел a1,a2,,an (1<=ai<=5105) — массив a. Третья строка содержит m целых чисел b1,b2,,bm (1<=bi<=5105) — массив b.
Формат выходного файла
Выведите одно целое число — ответ на задачу Арлана по модулю 998244353.
Примеры:
Вход
4 2
1 7 7 3
7 3
Ответ
1
Вход
2 1
1 1
1
Ответ
0
Замечание
В первом примере можно разделить массив на отрезки (1,2) и (3,4). ( Dimash Tursynbai )
посмотреть в олимпиаде

Комментарий/решение: