challenge comprises of n issues, where the tag of the I-th issue is meant by an integer simulated intelligence. You need to AK (take care of all issues). To do that, you should take care of the issues in some request. To make the challenge more amusing, you made additional impediments on yourself. You would rather
Correct answer will be upvoted else Multiple Downvoted. Don't submit random answer. Computer science.
challenge comprises of n issues, where the tag of the I-th issue is meant by an integer simulated intelligence.
You need to AK (take care of all issues). To do that, you should take care of the issues in some request. To make the challenge more amusing, you made additional impediments on yourself. You would rather not take care of two issues continuously with a similar tag since it is exhausting. Additionally, you fear huge leaps in troubles while tackling them, so you need to limit the number of times that you take care of two issues continuously that are not neighboring in the challenge request.
Officially, your settle request can be depicted by a change p of length n. The expense of a change is characterized as the number of lists I (1≤i<n) where |pi+1−pi|>1. You have the prerequisite that api≠api+1 for all 1≤i<n.
You need to know the base conceivable expense of change that fulfills the necessity. If no changes meet this prerequisite, you should report about it.
Input
The main line contains a solitary integer t (1≤t≤104) — the number of experiments.
The main line of the depiction of each experiment contains a solitary integer n (1≤n≤105) — the number of issues in the challenge.
The following line contains n integers a1,a2,… an (1≤
It is ensured that the amount of n over all experiments doesn't surpass 105.
Output
For each experiment, in case there are no stages that fulfill the necessary condition, print −1. In any case, print the base conceivable expense of a change that fulfills the necessary condition.
Step by step
Solved in 4 steps with 1 images