Подкрутка II

题目描述

В этой версии задачи n2105 n \le 2 \cdot 10^5 и ai106 a_i \le 10^6 (а также есть ограничение на сумму n n по наборам входных данных внутри одного теста).

Вика за время работы в компании VK уже сделала n n коммитов в системе контроля версий. i i -й коммит был сделан в ai a_i -й день работы Вики в компании. В некоторые дни Вика могла сделать несколько коммитов, а в другие — не сделать ни одного.

Вику интересуют такие отрезки подряд идущих дней, что в каждый из этих дней у неё есть хотя бы один коммит. Чем длиннее будет самый длинный такой отрезок, тем более продуктивным сотрудником она будет себя ощущать.

Недавно Вика нашла способ подкрутить время любого коммита вперёд, но не более чем на сутки. Таким образом, i i -й коммит теперь может быть «сделан» либо в ai a_i -й, либо в (ai+1) (a_i + 1) -й день. Время каждого коммита можно подкрутить независимо от других — в частности, можно как оставить всем коммитам исходное время, так и перенести все коммиты ровно на день вперёд.

Найдите длину самого длинного возможного отрезка подряд идущих дней, в каждый из которых у Вики в профиле будет отображаться хотя бы один коммит, после возможной подкрутки времени некоторых коммитов.

输入格式

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число t t ( 1t100 1 \le t \le 100 ) — количество наборов входных данных. Далее следует описание наборов входных данных.

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

Вторая строка содержит n n целых чисел a1,a2,,an a_1, a_2, \ldots, a_n в неубывающем порядке ( 1a1a2an106 1 \le a_1 \le a_2 \le \ldots \le a_n \le 10^6 ) — номера дней, в которые были сделаны коммиты.

Гарантируется, что сумма n n по всем наборам входных данных не превосходит 2105 2 \cdot 10^5 .

输出格式

Для каждого набора входных данных выведите одно целое число — максимальную возможную длину отрезка дней, в каждый из которых у Вики в профиле будет отображаться хотя бы один коммит, после возможной подкрутки времени некоторых коммитов вперёд не более чем на сутки.

样例 #1

样例输入 #1

3
9
1 1 3 4 6 6 6 8 10
6
1 2 3 4 5 6
5
10 10 10 10 10

样例输出 #1

5
6
2

0 comments

No comments so far...