#agc037c. [agc037_c]Numbers on a Circle

[agc037_c]Numbers on a Circle

问题描述

现在有 NN 个正整数排列成一个圆。

现在,第 ii 个数字是 AiA_i。高桥希望第 ii 个数字变为 BiB_i。为了实现这个目标,他将重复执行以下操作:

  • 选择一个整数 ii,使得 1leqileqN1 \\leq i \\leq N
  • a,b,ca, b, c 分别为 (i1)(i-1)ii(i+1)(i+1) 位置的数。将第 ii 个数字替换为 a+b+ca+b+c

这里的第 00 个数字是第 NN 个数字,第 (N+1)(N+1) 个数字是第 11 个数字。

判断高桥是否能够实现他的目标。如果答案是肯定的,则找到所需操作的最小次数。

约束条件

  • 3leqNleq2times1053 \\leq N \\leq 2 \\times 10^5
  • 1leqAi,Bileq1091 \\leq A_i, B_i \\leq 10^9
  • 输入中的所有值都是整数。

输入

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

NN A1A_1 A2A_2 ...... ANA_N B1B_1 B2B_2 ...... BNB_N

输出

打印所需的最小操作次数,如果无法实现目标则输出 -1


示例输入 1

3
1 1 1
13 5 7

示例输出 1

4

高桥可以通过以下操作实现他的目标:

  • 将第二个数字替换为 33
  • 将第二个数字替换为 55
  • 将第三个数字替换为 77
  • 将第一个数字替换为 1313

示例输入 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