Untitled
unknown
plain_text
3 years ago
907 B
6
Indexable
#include <bits/stdc++.h> using namespace std; int main (){ int n, p[100010] = {0}, h[100010] = {0}; vector <int> v; cin >> n; for(int i=1; i<=n; i++){ int chnum; cin >> chnum; if(chnum==0) v.push_back(i); for(int j=1; j<=chnum; j++){ int ch; cin >> ch; p[ch] = i; } }int i=1; i<=n; i++) cout << p[i] << " "; //test for cin parent of child //for( int root; for(int i=1; i<=n; i++){ if(p[i] == 0){ root = i; break; } } cout << root << "\n"; //test the num of root //cout << "root is = " << root << "\n"; //test vector v inside /*cout << "test v \n"; for(auto i:v) cout << i << " "; cout << "\n";*/ int totalh=0, cnt; for(int i=0; i<v.size(); i++){ cnt = 0; for(int j=v[i]; j!=0; j=p[j]){ h[j] = max(h[j], cnt++); } } for(int i=1; i<=n; i++) totalh += h[i]; cout << totalh << "\n"; }
Editor is loading...