筑波大学プログラミングコンテスト2023
コンテスト日時
2023/09/03 (Su) 14:00 - 17:00

G - Pseudo Fibonacci

Flavor
2
s
1024
MB
600

問題文

長さ NN の整数列 A,BA, B が与えられます。次の操作①, ②を任意の順番で任意の回数行って AABB に一致させるために必要な操作回数の最小値を求めてください。

操作①: 1iN1 \leq i \leq N を選び、AiA_i の値を任意の整数 xx に置き換える。
操作②: 3iN3 \leq i \leq N を選び、AAii 番目以降の要素 (Ai,,AN)(A_i, \ldots , A_N) を三項間漸化式 Ajp×Aj1+q×Aj2(modN)A_j \equiv p \times A_{j-1} + q \times A_{j-2} \pmod N (ijN)(i \leq j \leq N) を満たすように置き換える。より厳密には、j=i,,Nj = i, \dots, N について、この順に Aj(p×Aj1+q×Aj2)modNA_j ← (p \times A_{j-1} + q \times A_{j-2}) \bmod N を行う。

制約

  • 入力は全て整数
  • 3N803 \leq N \leq 80
  • 0p,qN10 \leq p, q \leq N-1
  • 0Ai,BiN10 \leq A_i, B_i \leq N-1 (1iN)(1 \leq i \leq N)

部分点

この問題には、部分点が設定されている。満点は 600600 点である。

  • 3N403 \leq N \leq 40 を満たすデータセットに正解した場合は、400400 点が与えられる
  • 追加の制約の無い全てのデータセットに正解した場合は、上記に加えて 200200 点が与えられ、600600 点(満点)となる

入力

入力は以下の形式で標準入力から与えられる。

NN
pp qq
A1A_1 A2A_2 \cdots ANA_N
B1B_1 B2B_2 \cdots BNB_N

出力

答えを出力せよ。

入力例 1
6 1 1 0 1 2 3 4 5 0 1 1 2 3 5
出力例 1
1
入力例 2
3 2 1 2 1 0 2 1 0
出力例 2
0
入力例 3
6 0 0 5 0 5 2 5 1 5 4 2 5 3 0
出力例 3
5
入力例 4
8 6 2 3 1 4 1 6 0 1 7 4 5 2 0 4 0 0 7
出力例 4
5