Submission #3110460
Source Code Expand
#include <bits/stdc++.h> using namespace std; using lint = long long int; template<class T = int> using V = vector<T>; template<class T = int> using VV = V< V<T> >; template<class T> void assign(V<T>& v, int n, const T& a = T()) { v.assign(n, a); } template<class T, class... U> void assign(V<T>& v, int n, const U&... u) { v.resize(n); for (auto&& i : v) assign(i, u...); } int rec(int v, const VV<>& c, V<>& a){ if (c[v].empty()) return a[v] = 1; int res = 1; for (auto&& i : c[v]) res += rec(i, c, a); return a[v] = res; } int main() { cin.tie(NULL); ios::sync_with_stdio(false); int n; cin >> n; V<> p(n); for (int i = 1; i < n; i++) cin >> p[i]; VV<> c(n); for (int i = 1; i < n; i++) c[p[i]].push_back(i); V<> a(n); rec(0, c, a); for (int i = 0; i < n; i++) { int res = -1; int s = 0; for (auto&& v : c[i]) { res = max(res, a[v]); s += a[v]; } cout << max(res, n - 1 - s) << '\n'; } }
Submission Info
Submission Time | |
---|---|
Task | C - 高橋王国の分割統治 |
User | risujiroh |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 982 Byte |
Status | AC |
Exec Time | 29 ms |
Memory | 13312 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 30 / 30 | 70 / 70 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt |
Subtask1 | sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt |
Subtask2 | sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 1 ms | 256 KB |
sample_02.txt | AC | 1 ms | 256 KB |
subtask1_01.txt | AC | 1 ms | 256 KB |
subtask1_02.txt | AC | 1 ms | 256 KB |
subtask1_03.txt | AC | 1 ms | 256 KB |
subtask1_04.txt | AC | 1 ms | 256 KB |
subtask1_05.txt | AC | 1 ms | 256 KB |
subtask1_06.txt | AC | 1 ms | 256 KB |
subtask1_07.txt | AC | 1 ms | 256 KB |
subtask1_08.txt | AC | 1 ms | 256 KB |
subtask1_09.txt | AC | 1 ms | 384 KB |
subtask2_01.txt | AC | 21 ms | 4224 KB |
subtask2_02.txt | AC | 27 ms | 5120 KB |
subtask2_03.txt | AC | 29 ms | 5632 KB |
subtask2_04.txt | AC | 29 ms | 5632 KB |
subtask2_05.txt | AC | 17 ms | 4472 KB |
subtask2_06.txt | AC | 17 ms | 4736 KB |
subtask2_07.txt | AC | 26 ms | 13312 KB |