Submission #777030

#TimeUsernameProblemLanguageResultExecution timeMemory
777030YassirSalamaConnecting Supertrees (IOI20_supertrees)C++14
11 / 100
150 ms22056 KiB
#include "supertrees.h" #include <vector> #include<bits/stdc++.h> using namespace std; const int MAXN=1100; int par[MAXN]; void make_set(){ for(int i=0;i<MAXN;i++) par[i]=i; } int find(int node){ if(node==par[node]) return node; return par[node]=find(par[node]); } void merge(int a,int b){ par[find(a)]=b; } int construct(vector<vector<int>> p) { int n = p.size(); vector<vector<int>> answer(n,vector<int>(n,0)); make_set(); for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(find(i)==find(j)) answer[i][j]=0; else{ merge(i,j); answer[i][j]=1; } } } for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(answer[i][j]) answer[j][i]=answer[i][j]; } } build(answer); return 1; }
#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...