Мы называем массив $$$b$$$ длины $$$m$$$ классным, если и только если:
У Симона есть массив $$$a$$$ размером $$$n$$$. Изначально массив является перестановкой$$$^{\text{∗}}$$$.
Он должен выполнять следующую операцию, пока массив не станет классным:
Найдите минимальное количество операций, которые должен выполнить Симон.
$$$^{\text{∗}}$$$Перестановкой длины $$$n$$$ является массив, состоящий из $$$n$$$ различных целых чисел от $$$1$$$ до $$$n$$$ в произвольном порядке. Например, $$$[2,3,1,5,4]$$$ — перестановка, но $$$[1,2,2]$$$ не перестановка ($$$2$$$ встречается в массиве дважды) и $$$[1,3,4]$$$ тоже не перестановка ($$$n=3$$$, но в массиве встречается $$$4$$$).
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 5\cdot 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Первая строка содержит целое число $$$n$$$ ($$$3\le n\le 5\cdot 10^5$$$) — размер массива $$$a$$$.
Вторая строка содержит $$$n$$$ целых чисел $$$a_1,a_2,\ldots,a_n$$$ ($$$1\le a_i\le n$$$, все $$$a_i$$$ различны) — массив, который изначально есть у Симона.
Гарантируется, что сумма значений $$$n$$$ по всем наборам входных данных не превосходит $$$5\cdot 10^5$$$.
Для каждого набора входных данных выведите одно целое число — минимальное количество операций, которые должен выполнить Симон.
531 2 354 1 3 2 564 5 3 6 2 176 5 1 7 4 2 3157 4 10 12 9 14 5 3 8 11 1 15 2 13 6
01339
В первом наборе входных данных массив изначально классный, поэтому Симон не может выполнить никаких операций. Ответ равен $$$0$$$.
Во втором наборе входных данных Симон может выполнить следующее:
Мы видим, что массив теперь классный. Таким образом, ответ равен $$$1$$$.
В третьем наборе входных данных Симон может выполнить следующее:
Таким образом, Симон сделает массив классным за $$$3$$$ операции.