Problem
最近,Risotto Nero 发现了河内的塔楼,他非常喜欢这个拼图。然而,他厌倦了纸上谈兵,所以他决定在现实生活中重现它们。
然而,Risotto Nero 只有相同半径的圆环,所以他想出了一个不同的谜题。
有n根棍子。最初,他们每个人要么只有一个戒指,要么没有。同时,至少有一个圆环出现在任何一根木棍上。
只需一个动作,您就可以将戒指转移到相邻的魔杖上。
需要最少的动作数才能达到这样的情况,即某个整数k>; 1 使得每根木棍上的环数可以被 k 整除,或者说这是不可能的。
Risotto Nero 已经解决了这个问题,等待您检查答案。
输入:
第一行包含一个整数 n (1 ≤ n ≤ 10
5) —棍子的数量。
第二行包含n个整数a
1,a
2,…,a
n (0 ≤ a_i ≤ 1) —每根木棍上的初始环数。
输出:
如果所需的解决方案不存在,则打印 −1。
否则打印 x —使拼图达到所需状态的最少操作数。
示例:
<正文>
输入 |
输出 |
3
1 0 1
| 2 |
1
1 |
-1 |
表>
解释:
在第一个示例中,您可以先将环从第三根棍子移到第二根棍子上,然后再从第二根棍子移到第一根棍子上。之后,每根木棍上的环数将除以 2。