B - Triple Shift Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 400

問題文

長さ N の整数列 A=(A_1,A_2,\cdots,A_N) および B=(B_1,B_2,\cdots,B_N) が与えられます.

あなたは,以下の操作を好きな回数繰り返すことができます.

  • 整数 i (1 \leq i \leq N-2) を選び,現在の A_i,A_{i+1},A_{i+2} の値をそれぞれ x,y,z とする. そして,A_i,A_{i+1},A_{i+2} の値をそれぞれ z,x,y で置き換える.

AB に一致させることができるかどうか判定してください.

制約

  • 3 \leq N \leq 5000
  • 1 \leq A_i,B_i \leq 5000
  • 入力される値はすべて整数

入力

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

N
A_1 A_2 \cdots A_N
B_1 B_2 \cdots B_N

出力

AB に一致させることが可能な場合は Yes を,そうでない場合は No を出力せよ.


入力例 1

4
3 1 4 5
4 1 5 3

出力例 1

Yes

以下のように操作すればよいです.

  • 最初,A=(3,1,4,5) である.
  • i=1 で操作を行う.A=(4,3,1,5) となる.
  • i=2 で操作を行う.A=(4,5,3,1) となる.
  • i=2 で操作を行う.A=(4,1,5,3) となる.

入力例 2

3
1 2 2
2 1 2

出力例 2

Yes

入力例 3

3
1 2 3
2 3 4

出力例 3

No

Score : 400 points

Problem Statement

You are given integer sequences of length N each: A=(A_1,A_2,\cdots,A_N) and B=(B_1,B_2,\cdots,B_N).

You can repeat the following operation any number of times.

  • Choose an integer i (1 \leq i \leq N-2) and let x,y,z be the current values of A_i,A_{i+1},A_{i+2}, respectively. Then, replace the values of A_i,A_{i+1},A_{i+2} with z,x,y, respectively.

Determine whether it is possible to make A equal B.

Constraints

  • 3 \leq N \leq 5000
  • 1 \leq A_i,B_i \leq 5000
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

N
A_1 A_2 \cdots A_N
B_1 B_2 \cdots B_N

Output

If it is possible to make A equal B, print Yes; otherwise, print No.


Sample Input 1

4
3 1 4 5
4 1 5 3

Sample Output 1

Yes

We should do the following.

  • Initially, we have A=(3,1,4,5).
  • Do the operation with i=1, making A=(4,3,1,5).
  • Do the operation with i=2, making A=(4,5,3,1).
  • Do the operation with i=2, making A=(4,1,5,3).

Sample Input 2

3
1 2 2
2 1 2

Sample Output 2

Yes

Sample Input 3

3
1 2 3
2 3 4

Sample Output 3

No