#include <iostream>
#include <vector>
#include <algorithm>
#include <queue>
#include <climits>
using namespace std;
//#define int long long
signed main()
{
int n;
cin >> n;
vector<vector<int>> g(n);
for (size_t i = 1; i < n; i++)
{
int a;
cin >> a;
a--;
g[a].push_back(i);
g[i].push_back(a);
}
vector<int> dist(n);
queue<pair<int,int>> BFS;
BFS.push({ 0,0 });
while (!BFS.empty()) {
pair<int, int> cur = BFS.front();
dist[cur.first] = cur.second;
BFS.pop();
for (size_t i = 0; i < g[cur.first].size(); i++)
{
int val = g[cur.first][i];
if (dist[val] == 0) {
dist[val] = cur.second+1;
BFS.push({ val,cur.second + 1 });
}
}
}
int minRes = INT_MAX;
for (size_t i = 1; i < dist.size(); i++) {
if (g[i].size() == 1) {
minRes = min(dist[i], minRes);
}
}
cout << minRes+1 << "\n";
dist[0] = 0;
for (size_t i = 0; i < dist.size(); i++)
{
cout << min(minRes+1, dist[i] + 1) << " ";
}
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1812 KiB | |||
2 | Elfogadva | 0/0 | 8ms | 3140 KiB | |||
3 | Elfogadva | 1/1 | 3ms | 2096 KiB | |||
4 | Elfogadva | 4/4 | 3ms | 2288 KiB | |||
5 | Elfogadva | 5/5 | 128ms | 26064 KiB | |||
6 | Elfogadva | 2/2 | 163ms | 26284 KiB | |||
7 | Elfogadva | 3/3 | 164ms | 26496 KiB | |||
8 | Elfogadva | 2/2 | 178ms | 26720 KiB | |||
9 | Elfogadva | 2/2 | 159ms | 27352 KiB | |||
10 | Elfogadva | 2/2 | 159ms | 27756 KiB | |||
11 | Elfogadva | 2/2 | 166ms | 27608 KiB | |||
12 | Elfogadva | 2/2 | 165ms | 26916 KiB | |||
13 | Elfogadva | 2/2 | 170ms | 26912 KiB | |||
14 | Elfogadva | 2/2 | 163ms | 27104 KiB | |||
15 | Elfogadva | 2/2 | 175ms | 27052 KiB | |||
16 | Elfogadva | 2/2 | 223ms | 27048 KiB | |||
17 | Elfogadva | 2/2 | 158ms | 27272 KiB | |||
18 | Elfogadva | 2/2 | 158ms | 27356 KiB | |||
19 | Elfogadva | 2/2 | 153ms | 27572 KiB | |||
20 | Elfogadva | 2/2 | 155ms | 27476 KiB | |||
21 | Elfogadva | 2/2 | 157ms | 27556 KiB | |||
22 | Elfogadva | 2/2 | 156ms | 27820 KiB | |||
23 | Elfogadva | 2/2 | 167ms | 28080 KiB | |||
24 | Elfogadva | 3/3 | 181ms | 28132 KiB |