Submission #977239

#TimeUsernameProblemLanguageResultExecution timeMemory
977239AliHasanliConnecting Supertrees (IOI20_supertrees)C++17
21 / 100
158 ms24148 KiB
#include "supertrees.h" #include <bits/stdc++.h> using namespace std; int par[1001],siz[1001]; int findd(int a) { if(a==par[a])return a; return par[a]=findd(par[a]); } bool unionn(int a,int b) { a=findd(a),b=findd(b); if(a!=b) { if(siz[b]>siz[a]) swap(a,b); par[b]=a; siz[a]+=siz[b]; return 1; } return 0; } bool check(int a,int b) { a=findd(a),b=findd(b); if(a!=b)return 1; return 0; } int construct(vector<vector<int>> p) { for(int i=0;i<1001;i++) { par[i]=i; siz[i]=1; } int n = p.size(); for(int i=0;i<n-1;i++) for(int j=i+1;j<n;j++) if(p[i][j]==3)return 0; vector<vector<int>> answer; for (int i = 0; i < n; i++) { vector<int> row; row.resize(n); answer.push_back(row); } //for(int i=0;i<n-1;i++) // for(int j=i+1;j<n;j++) // if(p[i][j]==0 && !check(i,j))return 0; for(int i=0;i<n-1;i++) for(int j=i+1;j<n;j++) if(p[i][j] && unionn(i,j))answer[i][j]=1,answer[j][i]=1; for(int i=0;i<n-1;i++) for(int j=i+1;j<n;j++) if(p[i][j]==0 && !check(i,j))return 0; build(answer); return 1; }

Compilation message (stderr)

supertrees.cpp: In function 'int construct(std::vector<std::vector<int> >)':
supertrees.cpp:37:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   37 |     for(int i=0;i<n-1;i++)
      |     ^~~
supertrees.cpp:40:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   40 |  vector<vector<int>> answer;
      |  ^~~~~~
supertrees.cpp:52:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   52 |     for(int i=0;i<n-1;i++)
      |     ^~~
supertrees.cpp:55:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   55 |  build(answer);
      |  ^~~~~
#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...