Submission #4038699
Source Code Expand
#include <bits/stdc++.h> using namespace std; int n; int parent[100004], size[100004], r[100004],p[100004],m,x,y; void init(){ for(int i = 1;i<=n;i++){ parent[i] = i; size[i] = 1; r[i] = 0; } } int find(int p){ if(parent[p] == p) return p; else return parent[p] = find(parent[p]); } void uni(int p, int q){ p = find(p); q = find(q); if(r[p]<r[q]) parent[p] = q, size[q] += size[p]; else parent[q] = p, size[p] += size[q]; if(r[p] == r[q]) r[p]++; } int main() { cin>>n>>m; for(int i = 1; i <= n; i++) cin>>p[i]; init(); while(m--){ cin>>x>>y; if(find(x)==find(y)) continue; uni(x,y); } int cnt = 0; for(int i = 1;i<=n;i++){ if(p[i] == i){ cnt++; continue; } if(find(p[i]) == find(i)) cnt++; } cout<<cnt; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Equals |
User | lhoon |
Language | C++14 (GCC 5.4.1) |
Score | 400 |
Code Size | 808 Byte |
Status | AC |
Exec Time | 112 ms |
Memory | 1792 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 400 / 400 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 0_000.txt, 0_001.txt, 0_002.txt, 0_003.txt |
All | 0_000.txt, 0_001.txt, 0_002.txt, 0_003.txt, 1_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt, 1_015.txt, 1_016.txt, 1_017.txt, 1_018.txt, 1_019.txt, 1_020.txt, 1_021.txt, 1_022.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
0_000.txt | AC | 1 ms | 256 KB |
0_001.txt | AC | 1 ms | 256 KB |
0_002.txt | AC | 1 ms | 256 KB |
0_003.txt | AC | 1 ms | 256 KB |
1_004.txt | AC | 51 ms | 256 KB |
1_005.txt | AC | 107 ms | 1792 KB |
1_006.txt | AC | 112 ms | 1792 KB |
1_007.txt | AC | 1 ms | 256 KB |
1_008.txt | AC | 1 ms | 256 KB |
1_009.txt | AC | 1 ms | 256 KB |
1_010.txt | AC | 3 ms | 384 KB |
1_011.txt | AC | 1 ms | 256 KB |
1_012.txt | AC | 1 ms | 256 KB |
1_013.txt | AC | 2 ms | 256 KB |
1_014.txt | AC | 3 ms | 256 KB |
1_015.txt | AC | 2 ms | 256 KB |
1_016.txt | AC | 2 ms | 256 KB |
1_017.txt | AC | 2 ms | 256 KB |
1_018.txt | AC | 48 ms | 256 KB |
1_019.txt | AC | 37 ms | 1792 KB |
1_020.txt | AC | 37 ms | 1792 KB |
1_021.txt | AC | 39 ms | 1792 KB |
1_022.txt | AC | 110 ms | 1792 KB |