#include #include using namespace std; using namespace atcoder; void fast_io() { ios::sync_with_stdio(false); std::cin.tie(nullptr); } int main() { fast_io(); int n, m; cin >> n >> m; vector c(n); vector cnt(n); for (int i = 0; i < n; i++) { cin >> c[i]; c[i]--; cnt[c[i]]++; } int ans = 0; for (int i = 0; i < n; i++) { ans += max(0, cnt[i] - 1); } dsu d(n); for (int i = 0; i < m; i++) { int u, v; cin >> u >> v; u--; v--; if (d.same(u, v) || c[u] != c[v]) { continue; } d.merge(u, v); ans--; } cout << ans << endl; }