Submission #1310833

#TimeUsernameProblemLanguageResultExecution timeMemory
1310833trigon9월 (APIO24_september)C++20
0 / 100
1 ms568 KiB
#include<bits/stdc++.h> using namespace std; ///#define a leftchild struct node{ int a=0; int b=0; int parent=-1; }; int solve(int N, int M, std::vector<int> F, std::vector<std::vector<int>> S){ int ans=0; vector<node> tree(N); for(int i=1;i<=N-1;i++){ if(tree[F[i]].a==0) tree[F[i]].b=i; else tree[F[i]].b=i; tree[i].parent = F[i]; } vector<set<int>> s(M); vector<set<int>> s2(M); for(int i=1;i<=N-1;i++){ bool condition = true; set<int> prev; for(int j=0;j<M;j++){ s[j].erase(S[j][i]); s2[j].insert(S[j][i]); if(tree[S[j][i]].a!=0) s[j].insert(tree[S[j][i]].a); if(tree[S[j][i]].b!=0) s[j].insert(tree[S[j][i]].b); if(s.empty() && condition){ if(!j==0){ if(prev != s[j]) condition=false; } else prev = s[j]; } } if(condition) ans++; } return ans; };
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...