Submission #1198009

#TimeUsernameProblemLanguageResultExecution timeMemory
1198009guagua0407September (APIO24_september)C++20
100 / 100
135 ms10432 KiB
#include "september.h" //#include "stub.cpp" #include <bits/stdc++.h> using namespace std; #define ll long long #define pii pair<int,int> #define f first #define s second #define all(x) x.begin(),x.end() #define _ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int solve(int n, int m, std::vector<int> F, std::vector<std::vector<int>> S) { vector<vector<int>> adj(n); for(int i=1;i<n;i++){ //cout<<F[i-1]<<' '<<i<<'\n'; adj[F[i]].push_back(i); } //return 0; vector<bool> vis(n); set<int> st; function<void(int)> dfs=[&](int v){ if(vis[v]) return; vis[v]=true; st.insert(v); for(auto u:adj[v]){ dfs(u); } }; int ans=0; int cnt=0; for(int i=0;i<n-1;i++){ cnt++; for(int j=0;j<m;j++){ dfs(S[j][i]); } if((int)st.size()==cnt){ st.clear(); ans++; cnt=0; } } 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...