제출 #730090

#제출 시각아이디문제언어결과실행 시간메모리
730090lucri슈퍼트리 잇기 (IOI20_supertrees)C++17
21 / 100
220 ms24016 KiB
#include "supertrees.h" #include <vector> #include <cassert> #include <cstdio> #include <cstdlib> #include <string> int t[1010]; int tata(int nod) { if(t[nod]==nod) return nod; return t[nod]=tata(t[nod]); } int construct(std::vector<std::vector<int>> p) { int n = p.size(); std::vector<std::vector<int>> answer; answer.resize(n); for (int i = 0; i < n; i++) { t[i]=i; answer[i].resize(n); } for(int i=0;i<n;++i) { for(int j=0;j<n;++j) if(p[i][j]==1) { if(tata(i)!=tata(j)) { answer[i][j]=answer[j][i]=1; t[t[i]]=t[j]; } } } for(int i=0;i<n;++i) { for(int j=0;j<n;++j) if(p[i][j]==0) { if(tata(i)==tata(j)) return 0; } } 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...