Leapfrog

아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

NN 個のマスが円状に並んでいる。マスは時計回りに 1, 2, ..., N1,\ 2,\ ...,\ N と番号が振られている。各 ii (1iN11\leq i\leq N-1) について、ii 番目のマスと i+1i+1 番目のマスは隣り合う。また、NN 番目のマスと 11 番目のマスは隣り合う。

これらのうち MM 個のマスには、互いに区別できない駒が 11 個ずつ置かれている。はじめ、x_1, x_2, ..., x_Mx\_1,\ x\_2,\ ...,\ x\_M 番目のマスに駒が置かれている。次の操作を何回か行い、y_1, y_2, ..., y_My\_1,\ y\_2,\ ...,\ y\_M 番目のマスに駒が置かれているようにしたい。

  • 時計回りまたは反時計回りに連続する 33 個のマスを選び、順に A, B, CA,\ B,\ C とおく。AABB にそれぞれ駒があり CC に駒がないならば、AA の駒を CC へ移動する。

y_1, y_2, ..., y_My\_1,\ y\_2,\ ...,\ y\_M 番目のマスに駒が置かれているようにできるか判定せよ。できるならば、必要な操作の回数の最小値を求めよ。

입력

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

NN MM

x_1x\_1 x_2x\_2 ...... x_Mx\_M

y_1y\_1 y_2y\_2 ...... y_My\_M

출력

y_1, y_2, ..., y_My\_1,\ y\_2,\ ...,\ y\_M 番目のマスに駒が置かれているようにできるならば、必要な操作の回数の最小値を一行に出力せよ。できないならば、代わりに -1 を一行に出力せよ。

제한

  • 3N3,0003\leq N\leq 3,000
  • 1MN1\leq M\leq N
  • 1x_1\<x_2<...\<x_MN1\leq x\_1\<x\_2<...\<x\_M\leq N
  • 1y_1\<y_2<...\<y_MN1\leq y\_1\<y\_2<...\<y\_M\leq N