atcoder#AGC005E. [AGC005E] Sugigma: The Showdown

[AGC005E] Sugigma: The Showdown

Score : 14001400 points

Problem Statement

Sigma and Sugim are playing a game.

The game is played on a graph with NN vertices numbered 11 through NN. The graph has N1N-1 red edges and N1N-1 blue edges, and the N1N-1 edges in each color forms a tree. The red edges are represented by pairs of integers (ai,bi)(a_i, b_i), and the blue edges are represented by pairs of integers (ci,di)(c_i, d_i).

Each player has his own piece. Initially, Sigma's piece is at vertex XX, and Sugim's piece is at vertex YY.

The game is played in turns, where turns are numbered starting from turn 11. Sigma takes turns 1,3,5,...1, 3, 5, ..., and Sugim takes turns 2,4,6,...2, 4, 6, ....

In each turn, the current player either moves his piece, or does nothing. Here, Sigma can only move his piece to a vertex that is directly connected to the current vertex by a red edge. Similarly, Sugim can only move his piece to a vertex that is directly connected to the current vertex by a blue edge.

When the two pieces come to the same vertex, the game ends immediately. If the game ends just after the operation in turn ii, let ii be the total number of turns in the game.

Sigma's objective is to make the total number of turns as large as possible, while Sugim's objective is to make it as small as possible.

Determine whether the game will end in a finite number of turns, assuming both players plays optimally to achieve their respective objectives. If the answer is positive, find the number of turns in the game.

Constraints

  • 2N200,0002 \leq N \leq 200,000
  • 1X,YN1 \leq X, Y \leq N
  • XYX \neq Y
  • 1ai,bi,ci,diN1 \leq a_i, b_i, c_i, d_i \leq N
  • The N1N-1 edges in each color (red and blue) forms a tree.

Input

The input is given from Standard Input in the following format:

NN XX YY

a1a_1 b1b_1

a2a_2 b2b_2

::

aN1a_{N-1} bN1b_{N-1}

c1c_1 d1d_1

c2c_2 d2d_2

::

cN1c_{N-1} dN1d_{N-1}

Output

If the game will end in a finite number of turns, print the number of turns. Otherwise, print -1.

4 1 2
1 2
1 3
1 4
2 1
2 3
1 4
4

3 3 1
1 2
2 3
1 2
2 3
4

4 1 2
1 2
3 4
2 4
1 2
3 4
1 3
2

4 2 1
1 2
3 4
2 4
1 2
3 4
1 3
-1
5 1 2
1 2
1 3
1 4
4 5
2 1
1 3
1 5
5 4
6