제출 #1308329

#제출 시각아이디문제언어결과실행 시간메모리
1308329glupanCat in a tree (BOI17_catinatree)C++20
0 / 100
1 ms332 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long const int MOD = 998244353; const int MAX_N = 2e5+5; vector<int>adj[MAX_N]; void solve() { int Ans=0; int n,d; cin >> n >> d; for(int i=1; i<n; i++) { int x; cin >> x; adj[i].push_back(x); adj[x].push_back(i); } for(int i=0; i<n; i++) { queue<pair<int,int>>q; vector<int>visited(n+1,0); int ans=1; q.push({i,0}); visited[i] = 1; while(!q.empty()) { pair<int,int> v = q.front(); //cout << v.first << " " << v.second << endl; if(v.second > 0 and v.second % d == 0) ans++; q.pop(); for(auto u : adj[v.first]) { if(!visited[u]) { visited[u] = 1; q.push({u, v.second+1}); } } } Ans = max(Ans, ans); } cout << Ans << endl; } int main() { ios::sync_with_stdio(false); cin.tie(NULL); int t=1; while(t--) solve(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...