孤独的数组
题号:NC235684
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

给出一个长度为  的整数数组,分别为。牛牛可以对数组进行操作,每次操作选定一个下标  ,再确定一个整数  ,令 。牛牛想要知道,最少需要操作几次,才能让数组  变成 "孤独的数组"

”孤独的数组“ 定义: 对于全部 

如果无论怎么操作都无法让数组变成孤独的,输出 

输入描述:

第一行包括一个整数   表示数组的长度。

第二行包括  个整数,分别表示  。

输出描述:

输出一行,包含一个整数,表示最小的操作次数。
示例1

输入

复制
2
1 2

输出

复制
0

说明

,无需再操作。
示例2

输入

复制
2
2 2

输出

复制
-1

说明

无论怎么操作都无法让 ,输出