Олимпиадный тренинг

Задача . F. Хороший подмассив


Задан целочисленный массив \(a\) размера \(n\).

Назовем массив хорошим, если его можно получить при помощи следующего алгоритма: создать массив, состоящий из одного любого целого числа; а затем произвольное количество раз выполнить следующую операцию: выбрать элемент из уже существующих в массиве (назовем его \(x\)) и в конец массива добавить \(x\), \((x-1)\) или \((x+1)\).

Например, массивы \([1, 2, 1]\), \([5]\) и \([3, 2, 1, 4]\) хорошие, а \([2, 4]\) и \([3, 1, 2]\) — нет.

Ваша задача — посчитать количество хороших непрерывных подмассивов массива \(a\). Два подмассива с одинаковыми элементами, которые различаются своими позициями в массиве \(a\), считаются различными.

Входные данные

Первая строка содержит одно целое число \(t\) (\(1 \le t \le 10^4\)) — количество наборов входных данных.

Первая строка каждого набора содержит одно целое число \(n\) (\(1 \le n \le 3 \cdot 10^5\)).

Вторая строка каждого набора содержит \(n\) целых чисел \(a_1, a_2, \dots, a_n\) (\( 1 \le a_i \le n)\).

Дополнительное ограничение на входные данные: сумма \(n\) по всем наборам входных данных не превосходит \(3 \cdot 10^5\).

Выходные данные

Для каждого набора входных данных выведите одно целое число — количество хороших непрерывных подмассивов массива \(a\).

Примечание

В первом примере следующие четыре подмассива — хорошие:

  • с \(1\)-го по \(1\)-й элемент;
  • с \(1\)-го по \(2\)-й элемент;
  • с \(2\)-го по \(2\)-й элемент;
  • с \(3\)-го по \(3\)-й элемент.

Во втором примере единственный подмассив, не являющийся хорошим, — это подмассив с \(3\)-го по \(4\)-й элемент.


Примеры
Входные данныеВыходные данные
1 4
3
1 1 3
4
3 2 3 1
1
1
8
4 5 6 5 3 2 3 1
4
9
1
23

time 3000 ms
memory 512 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя