제출 #1289658

#제출 시각아이디문제언어결과실행 시간메모리
1289658eri16슈퍼트리 잇기 (IOI20_supertrees)C++20
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h> //#include "supertrees.h" using namespace std; /* void build(vector<vector<int>> v){ for (int i=0; i<v.size(); i++){ for (int j=0; j<v.size(); j++){ cout<<v[i][j]<<' '; } cout<<"\n"; } } */ vector <int> fc(int i, vector<vector<int>> p){ vector <int> tm; for (int j=0; j<p.size(); j++){ if (p[i][j]==1){ tm.push_back(j); } } return tm; } int ck(int i,vector<vector<int>> p, vector <int> vt){ int ans=1; for (int j=0; j<vt.size(); j++){ if (p[i][vt[j]]==0){ans=0;} } return ans; } int construct(vector<vector<int>> p){ int n=p.size(); vector<vector<int>> arr(n); for (int i=0; i<n; i++){ for (int j=0; j<n; j++){ if (p[i][j]!=p[j][i]){return 0;} arr[i].push_back(0); } } vector <vector<int>> tree(n); vector <int> visited(n); for (int i=0; i<n; i++){visited[i]=0;} int k=0; for (int i=0; i<n; i++){ vector <int> vtm; if (visited[i]==0){ vtm=fc(i,p); for (int i=0; i<vtm.size(); i++){ tree[k].push_back(vtm[i]); } k++; } } for (int i=0; i<k; i++){ int ans=1; for (int j=0; j<tree[i].size(); j++){ ans=ans*ck(tree[i][j],p,tree[i]); } if (ans==0){return 0;} } for (int i=0; i<k; i++){ for (int j=0; j<tree[i].size()-1; j++){ arr[tree[i][j]][tree[i][j+1]]=1; arr[tree[i][j+1]][tree[i][j]]=1; } } build(arr); return 1; }

컴파일 시 표준 에러 (stderr) 메시지

supertrees.cpp: In function 'int construct(std::vector<std::vector<int> >)':
supertrees.cpp:83:5: error: 'build' was not declared in this scope
   83 |     build(arr);
      |     ^~~~~