#include <bits/stdc++.h>
#include "supertrees.h"
using namespace std;
typedef long long ll;
#define fi first
#define se second
#define pb push_back
#define fastIO ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define MOD 1000000007
int construct(vector<vector<int>> p) {
int n = p.size();
vector<vector<int>> answer(n,vector<int>(n));
for(int i=0; i<n; i++){
for(int j=0; j<n; j++){
if(p[i][j]==3) return 0;
if(p[i][j]!=p[j][i]) return 0;
}
}
vector<int> s(n,0);
for(int i=0; i<n; i++){
if(s[i]) continue;
vector<int> cur;
for(int j=0; j<n; j++){
if(p[i][j]>0){
if(s[j]) return 0;
s[j]=1;
cur.pb(j);
}
}
for(auto f1 : cur){
int c=0;
for(int f2=0; f2<n; f2++){
if(p[f1][f2]>0) c++;
}
if(c!=cur.size()) return 0;
}
if(cur.size()==1) continue;
if(cur.size()==2) return 0;
cur.pb(cur[0]);
for(int j=0; j<cur.size()-1; j++){
answer[cur[j]][cur[j+1]]=1;
answer[cur[j+1]][cur[j]]=1;
}
}
build(answer);
return 1;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |