码迷,mamicode.com
首页 > 其他好文 > 详细

1004 Counting Leaves

时间:2020-03-03 11:01:18      阅读:55      评论:0      收藏:0      [点我收藏+]

标签:cin   return   parent   for   color   using   技术   bsp   就是   

大致题意就是给出一棵树,求出每一层叶子节点个数。

 1 #include<iostream>
 2 #include<vector>
 3 #include<algorithm>
 4 using namespace std;
 5 
 6 const int maxn = 200;
 7 vector<int> node[maxn];
 8 int hashtable[maxn] = {0},maxlevel = -1;
 9 void DFS(int root,int level) {
10     if(node[root].size() == 0) { //叶子节点
11         hashtable[level]++;
12         maxlevel = max(maxlevel,level);
13         return ;
14     }
15     for(int i = 0; i < node[root].size(); ++i)
16         DFS(node[root][i],level+1);
17 }
18 
19 int main() {
20     int n,m,parent,k,child;
21     cin>>n>>m;
22     for(int i = 0 ; i < m; ++i) {
23         cin>>parent>>k;
24         for(int j = 0; j < k; ++j) {
25             cin>>child;
26             node[parent].push_back(child);
27         }
28     }
29     DFS(1,1);
30     for(int i = 1; i <= maxlevel; ++i) {
31         if(i > 1) printf(" ");
32         printf("%d",hashtable[i]);
33     }
34     return 0;
35 }

技术图片

 

1004 Counting Leaves

标签:cin   return   parent   for   color   using   技术   bsp   就是   

原文地址:https://www.cnblogs.com/keep23456/p/12400757.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!