#arc097b. [arc097_b]Equals

[arc097_b]Equals

問題文

11 から NN までの整数を並び替えた順列 p1p_1, p2p_2, .., pNp_N があります。 また、 11 以上 NN 以下の整数のペアが MM 個与えられます。 これらは (x1,y1)(x_1,y_1), (x2,y2)(x_2,y_2), .., (xM,yM)(x_M,y_M) で表されます。 シカの AtCoDeer くんは順列 pp に次の操作を好きなだけ行って、 pi=ip_i = i となる ii (11 ii NN) の数を最大にしようと考えています。

  • 11 jj MM なる jj を選び、 pxjp_{x_j}pyjp_{y_j} をスワップする

操作後の pi=ip_i = i となる ii の数として考えうる最大値を求めてください。

制約

  • 22 NN 10510^5
  • 11 MM 10510^5
  • pp11 から NN までの整数を並び替えた順列
  • 11 xj,yjx_j,y_j NN
  • xjx_j yjy_j
  • ii jj なら、 xi,yi\\{x_i,y_i\\} xj,yj\\{x_j,y_j\\}
  • 入力は全て整数

入力

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

NN MM p1p_1 p2p_2 .... pNp_N x1x_1 y1y_1 x2x_2 y2y_2 :: xMx_M yMy_M

出力

操作後の pi=ip_i = i となる ii (11 ii NN) の数として考えうる最大値を出力せよ。


入力例 1

5 2
5 3 1 4 2
1 3
5 4

出力例 1

j=1j=1 を選んで操作すると、 pp1 3 5 4 2 となり、これがベストなので答えは 22 です。


入力例 2

3 2
3 2 1
1 2
2 3

出力例 2

例えば j=1j=1, j=2j=2, j=1j=1 の順に操作すると、 pp1 2 3 となり明らかにこれがベストです。 同じ jj を何回選んでもいいことに注意してください。


入力例 3

10 8
5 3 6 8 7 10 9 1 2 4
3 1
4 1
5 9
2 5
6 5
3 5
8 9
7 9

出力例 3


入力例 4

5 1
1 2 3 4 5
1 5

出力例 4

操作をする必要はありません。