Submission #977441

#TimeUsernameProblemLanguageResultExecution timeMemory
977441Amaarsaa슈퍼트리 잇기 (IOI20_supertrees)C++14
0 / 100
1 ms348 KiB
#include<bits/stdc++.h> #include "supertrees.h" using namespace std; vector < int > adj[1002]; int ataman[10002]; int Get(int x) { if ( x == ataman[x]) return x; return ataman[x] = Get(ataman[x]); } void Unite(int x, int y) { x = Get(x); y = Get(y); if (x == y) return ; ataman[x]= y; } int construct(vector<vector<int>> a) { int n = a.size(), i, j; vector < vector < int > > ans(n, vector<int>(n, 0)); for (i = 0; i < n; i ++) ataman[i]= i; int s = 1; for ( i = 0; i < n; i++) { for ( j = 0; j < n; j ++) { if ( a[i][j] != 0 && i != j) Unite(i, j); } } for (i = 0; i < n; i ++) { for (j = 0; j < n; j ++) { if ( i == j) continue; if ( a[i][j] == 0 && Get(i) == Get(j)) s= 0; if ( a[i][j] != 0 && Get(i) != Get(j)) s = 0; } } build(ans); return s; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...