eolymp
bolt
Try our new interface for solving problems
Məsələlər

Преобразовать в перестановку

Преобразовать в перестановку

Имеется массив $A$ размера $n$. За одну операцию можно выбрать индекс $i~(1 \le i \le n)$ и увеличить $A_i$ на $1$. Найдите минимальное количество операций, необходимое для преобразования массива $A$ в перестановку размера $n$. Если это невозможно, выведите $-1$. Обратите внимание, что перестановка размера $n$ содержит каждый элемент от $1$ до $n$ ровно один раз. \InputFile Первая строка содержит количество тестов $T$. Каждый тест состоит из нескольких строк. Первая строка каждого теста содержит одно целое число $n~(1 \le n \le 1000)$ --- размер массива. В следующей строке записаны $n$ целых чисел --- элементы массива $A~(0 \le A_i \le 1000)$. \OutputFile Для каждого теста выведите в новой строке минимальное количество операций, необходимое для преобразования массива $A$ в перестановку размера $n$. Если это сделать невозможно, то выведите $-1$.
Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 128 MiB
Giriş verilənləri #1
4
4
3 1 1 2
3
0 3 3
3
3 2 1
3
2 0 1
Çıxış verilənləri #1
3
-1
0
3