**Замечание: мы не рекомендуем использовать для решения этой задачи
язык программирования Питон, чтобы получить полный балл по этой задаче.
**
\(N\) (\(1 \leq N \leq 7500\)) коров Фермера Джона стоят в ряд. Корова \(1\)
стоит в начале этого ряда, а корова \(N\) - в конце. \(i\)-ая корова имеет
разновидность \(a_i\) (\(1 \leq a_i \leq N\)).
ФД везет своих коров на осмотр в местную больницу для крупного рогатого скота.
Однако ветеринар, специализирующийся на коровах, очень придирчив и хочет провести осмотр \(i\)-ой
коровы в очереди, только если она относится к виду \(b_i\) (\(1 \leq b_i \leq N\)).
ФД ленивый и не хочет полностью переупорядочивать его коров.
Он выполняет следующую операцию ровно один раз.
- Выбирает два числа \(l\) и \(r\) такие, что \(1 \leq l \le r \leq N\).
Реверсирует порядок коров между \(l\)-ой и \(r\)-ой коровами включительно.
ФД хочет измерить насколько эффективен его подход. Для каждого \(c=0 \ldots N\),
помогите ФД помогите ФД определить количество различных операций (\(l,r\))
таких, что ровно \(c\) коров будут проверены ветеринаром.
Две операции (\(l_1,r_1\)) и (\(l_2,r_2\)) считаются различными, если
\(l_1 \neq l_2\) или \(r_1 \neq r_2\).
ФОРМАТ ВВОДА (с клавиатуры / stdin):
Первая строка содержит целое число
\(N\).
Вторая строка содержит \(a_1, a_2, \ldots, a_N\).
Третья строка содержит \(b_1, b_2, \ldots, b_N\).
ФОРМАТ ВЫВОДА (на экран / stdout):
Выведите \(N+1\) строку, где \(i\)-ая строка содержит количество различных операций
(\(l,r\)), которые обеспечат, что ровно \(i-1\) корова будет проверена.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
1 3 0 0 WWB BBB GGG
|
7
|
|
2
|
5 10 10000 30 1000 20 100 50 10 40 1 11 55 50 45 40 35 30 25 20 15 10 5
|
111
101
101
100
100
100
100
0
11
11
111
|
|
3
|
3 1 3 2 3 2 1
|
3
|
|
4
|
6 1 2 3 4 4 4
|
3
|
|
5
|
3 2 111 1 2 1 3
|
3
1
0
|
|
6
|
2 5 9 15 12 18 3 8 3 69 1 988244353 998244853
|
10
21
|
|
7
|
3 1 3 2 3 2 1
|
3
3
0
0
|
|
8
|
4 5 6 7 1 7 5 2 4 4 3 1 6 4 2 9
|
9
9
9
10
12
|
|
9
|
1 2
|
2
|