#ABC148D. 砖块

砖块

砖块

题目描述

NN 块砖横排成一列。

从左数第 ii1iN1 \leq i \leq N)块砖上写着整数 aia_i

你可以选择其中的任意 N1N - 1 块以下的砖敲碎。

假设敲碎后剩下 KK 块砖。此时,如果对任意整数 ii1iK1 \leq i \leq K),剩下砖中从左数第 ii 块上写着的整数都是 ii,那么 snuke 君会感到满意。

请输出为了让 snuke 君满意而需要敲碎的最少砖块数。如果无论怎样敲碎都不可能,则输出 -1

输入格式

输入按以下格式从标准输入给出:

NN
a1a_1 a2a_2 ...... aNa_N

输出格式

输出为了让 snuke 君满意而需要敲碎的最少砖块数。如果无论怎样敲碎都不可能,则输出 -1

样例

3
2 1 2
1

敲碎最左边的 11 块砖后,剩下砖上写着的整数从左到右为 11, 22

此时 snuke 君会感到满意。

3
2 2 2
-1

这种情况下,不存在让 snuke 君满意的敲砖方式。

10
3 1 4 1 5 9 2 6 5 3
7
1
1
0

有时一块砖也不用敲碎。

数据范围

  • 输入均为整数。
  • 1N2000001 \leq N \leq 200000
  • 1aiN1 \leq a_i \leq N
难度 普及+/提高-
通过率
尝试 0
已通过 0
ID
1833
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签