#ATarc097b. [ABC097D] Equals

[ABC097D] Equals

题目描述

有一个将 11NN 的整数重新排列得到的排列 p1,p2,,pNp_1, p_2, \ldots, p_N。另外,给定 MM 对整数对,每对为 (x1,y1),(x2,y2),,(xM,yM)(x_1, y_1), (x_2, y_2), \ldots, (x_M, y_M),其中 1xj,yjN1 \leq x_j, y_j \leq N。AtCoDeer 君希望通过任意次数地对排列 pp 进行如下操作,使得满足 pi=ip_i = iii 的数量(1iN1 \leq i \leq N)最大。

  • 选择一个 1jM1 \leq j \leq M,交换 pxjp_{x_j}pyjp_{y_j}

请你求出通过若干次操作后,满足 pi=ip_i = iii 的最大可能数量。

输入格式

输入通过标准输入给出,格式如下:

NN MM
p1p_1 p2p_2 \ldots pNp_N
x1x_1 y1y_1
x2x_2 y2y_2
\vdots
xMx_M yMy_M

输出格式

输出通过操作后,满足 pi=ip_i = iii 的最大可能数量。

样例 1

输入

5 2
5 3 1 4 2
1 3
5 4

输出

2

样例 2

输入

3 2
3 2 1
1 2
2 3

输出

3

样例 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

输出

8

样例 4

输入

5 1
1 2 3 4 5
1 5

输出

5

说明/提示

限制条件

  • 2N1052 \leq N \leq 10^5
  • 1M1051 \leq M \leq 10^5
  • pp11NN 的一个排列
  • 1xj,yjN1 \leq x_j, y_j \leq N
  • xjyjx_j \neq y_j
  • 如果 iji \neq j,则 {xi,yi}{xj,yj}\{x_i, y_i\} \neq \{x_j, y_j\}
  • 所有输入均为整数

样例解释 1

选择 j=1j=1 进行操作后,pp 变为 1 3 5 4 2,这是最优情况,因此答案为 22

样例解释 2

例如,依次选择 j=1j=1j=2j=2j=1j=1 进行操作后,pp 变为 1 2 3,显然这是最优情况。注意,同一个 jj 可以被多次选择。

样例解释 4

无需进行任何操作。

由 ChatGPT 4.1 翻译