11222. Однакові підпослідовності


Відправити розв'язок

Бали: 100
Time limit: 3.0s
Memory limit: 250M

Author:
Problem type
Allowed languages
C++, Java, Pascal, Python

Задаються дві послідовності \(S\) і \(T\) довжинами \(N\) і \(M\) відповідно. Обидві послідовності складаються з цілих чисел від 1 до \(10^5\) (включно).

У скількох пар підпослідовності \(S\) і підпослідовності \(T\) ці дві підпослідовності однакові за змістом?

Підпослідовність \(A\) являє собою послідовність, отриману шляхом видалення нуля або більше елементів з \(A\) та конкатенації елементів, що залишилися, без зміни порядку. І для \(S\), і для \(T\) ми розрізняємо дві підпослідовності, якщо набори індексів видалених елементів різні, навіть якщо підпослідовності однакові за змістом.

Оскільки відповідь може бути великою, то виведіть відповідь за модулем \(10^9 + 7\).

Формат вхідних даних

Перший рядок вхідного потоку містить цілі числа \(N,M\) (\(1 \le N,M \le 2 \times 10^3\)).

Другий рядок містить послідовність \(S\).

Третій рядок містить послідовність \(T\).

Числа у рядках розділяютьс пропуском.

Формат вихідних даних

У вихідний потік вивести шукану кількість пар підпослідовностей.

Примітка

До прикладу 1:

\(S\) має чотири підпослідовності: (), (1), (3), (1, 3).

\(T\) має чотири підпослідовності: (), (3), (1), (3, 1).

Існує 1 пара підпослідовностей, у яких обидві підпослідовності є (), 1 пара підпослідовностей, у яких обидві підпослідовності є (1) і 1 пара підпослідовностей, у якій обидві підпослідовності є (3), загалом три пари.

До прикладу 2:

\(S\) має чотири підпослідовності: (), (1), (1), (1, 1).

\(T\) має чотири підпослідовності: (), (1), (1), (1, 1).

Існує 1 пара підпослідовностей, у яких обидві підпослідовності є (), 2 пари підпослідовностей, у яких обидві підпослідовності є (1), 1 пара підпослідовностей, у якій обидві підпослідовності є (1,1), загалом шість пар.

Знову зауважимо, що ми розрізняємо дві підпослідовності, якщо набори індексів видалених елементів різні, навіть якщо підпослідовності однакові за змістом.

Приклад вхідних даних

2 2
1 3
3 1

Приклад вихідних даних

3

Приклад вхідних даних

2 2
1 1
1 1

Приклад вихідних даних

6

Приклад вхідних даних

4 4
3 4 5 6
3 4 5 6

Приклад вихідних даних

16

Приклад вхідних даних

10 9
9 6 5 7 5 9 8 5 6 7
8 6 8 5 5 7 9 9 7

Приклад вихідних даних

191

Коментарі

Ще немає коментарів.