#AT1472. D - Brick Break
D - Brick Break
D - Brick Break
Score : $400$ points
Problem Statement
We have $N$ bricks arranged in a row from left to right.
The $i$-th brick from the left $(1 \leq i \leq N)$ has an integer $a_i$ written on it.
Among them, you can break at most $N-1$ bricks of your choice.
Let us say there are $K$ bricks remaining. Snuke will be satisfied if, for each integer $i$ $(1 \leq i \leq K)$, the $i$-th of those brick from the left has the integer $i$ written on it.
Find the minimum number of bricks you need to break to satisfy Snuke's desire. If his desire is unsatisfiable, print -1
instead.
Constraints
- All values in input are integers.
- $1 \leq N \leq 200000$
- $1 \leq a_i \leq N$
Input
Input is given from Standard Input in the following format:
Output
Print the minimum number of bricks that need to be broken to satisfy Snuke's desire, or print -1
if his desire is unsatisfiable.
3
2 1 2
1
If we break the leftmost brick, the remaining bricks have integers $1$ and $2$ written on them from left to right, in which case Snuke will be satisfied.
3
2 2 2
-1
In this case, there is no way to break some of the bricks to satisfy Snuke's desire.
10
3 1 4 1 5 9 2 6 5 3
7
1
1
0
There may be no need to break the bricks at all.
相关
在下列比赛中: