Submission #821383

#TimeUsernameProblemLanguageResultExecution timeMemory
821383DenkataMarshmallow Molecules (CCO19_day2problem2)C++14
10 / 25
794 ms1048576 KiB
#include<bits/stdc++.h> using namespace std; const int maxn = 2e6+3; int i,j,p,q,n,m,k; long long ans; set <int> s[maxn]; set <int> Merge(set <int> a,set <int> b) { if(b.empty()) return a; if(a.empty()) return b; if((int)a.size()<(int)b.size()) swap(a,b); a.insert(b.begin(),b.end()); return a; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin>>n>>m; for(i=1;i<=m;i++) { cin>>p>>q; s[p].insert(q); } for(i=1;i<=n;i++) { if(s[i].size()==0)continue; ans+=(long long)s[i].size(); p = *s[i].begin();s[i].erase(p); if(s[i].size()==0)continue; s[p] = Merge(s[i],s[p]); } cout<<ans<<endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...