#agc037c. [agc037_c]Numbers on a Circle
[agc037_c]Numbers on a Circle
问题描述
现在有 个正整数排列成一个圆。
现在,第 个数字是 。高桥希望第 个数字变为 。为了实现这个目标,他将重复执行以下操作:
- 选择一个整数 ,使得 。
- 让 分别为 、 和 位置的数。将第 个数字替换为 。
这里的第 个数字是第 个数字,第 个数字是第 个数字。
判断高桥是否能够实现他的目标。如果答案是肯定的,则找到所需操作的最小次数。
约束条件
- 输入中的所有值都是整数。
输入
输入以以下格式从标准输入给出:
输出
打印所需的最小操作次数,如果无法实现目标则输出 -1
。
示例输入 1
3
1 1 1
13 5 7
示例输出 1
4
高桥可以通过以下操作实现他的目标:
- 将第二个数字替换为 。
- 将第二个数字替换为 。
- 将第三个数字替换为 。
- 将第一个数字替换为 。
示例输入 2
4
1 2 3 4
2 3 4 5
示例输出 2
-1
示例输入 3
5
5 6 5 2 1
9817 1108 6890 4343 8704
示例输出 3
25