#P1867. 2024.8.3-KDXF-第一题-树的排列

2024.8.3-KDXF-第一题-树的排列

题意

给定一棵树,每个节点有一个权值。现在每次可以交换任意两个节点的权值,请问最少需要多少次交换可以使得每个节点的权值等于它的编号?保证给出的权值是一个排列,也就是说保证一定有解。

输入描述

第一行输入一个正整数 nn,代表树上的节点数量。

第二行输入 nn 个正整数 a1,a2,...,ana_1, a_2, ..., a_n,第 ii 个数字表示节点 ii 的权值,这 nn 个数互不相同。

接下来的 n1n - 1 行,每行输入两个正整数 uuvv,代表节点 uu 和节点 vv 有一条边相连。

2n10002 \leq n \leq 1000

1u,v,ain1 \leq u, v, a_i \leq n

输出描述

一个整数,代表最小的交换次数。

示例1:

输入:

4
2 1 4 3
1 2
2 3
2 4

输出:

2