#include #include using namespace std; using namespace atcoder; using ll = long long; int N, M; int C[202020]; int u, v; map mp; int main(void){ cin >> N >> M; for (int i = 0; i < N; i++) { cin >> C[i]; mp[C[i]]++; } dsu uf(N); for (int i = 0; i < M; i++) { cin >> u >> v; u--, v--; if (C[u] == C[v]) uf.merge(u, v); } cout << uf.groups().size() - mp.size() << endl; return 0; }