和poj1655那道求树的重心基本上一样的,代码也没多大改动。

详情请见

#include<cstdio>
#include<algorithm>
#include<cstring>
#include<vector>
using namespace std;
#define MAXN 100000
int N;
vector<int> node[20005];
int num[MAXN];      //num[i]为以i结点为根的树的所有结点数。
int dp[MAXN];
bool vis[MAXN]; //由于为无向图,所以用这个来标记此结点是否计算过。int dfs(int id)
{int n=node[id].size();vis[id]=1;num[id]=1;for(int i=0;i<n;i++){if(!vis[node[id][i]])num[id]+=dfs(node[id][i]);}return num[id];
}
void cal(int id)
{int n=node[id].size();int k;vis[id]=1;for(int i=0;i<n;i++){k=node[id][i];if(vis[k]){dp[id]=max(dp[id],N-num[id]);}else{dp[id]=max(dp[id],num[k]);cal(k);}}
}int main()
{int a,b;while(scanf("%d",&N)!=EOF){for(int i=1;i<=N;i++)node[i].clear();memset(dp,0,sizeof(dp));for(int i=1;i<N;i++){scanf("%d%d",&a,&b);node[a].push_back(b);node[b].push_back(a);}memset(vis,0,sizeof(vis));dfs(1);memset(vis,0,sizeof(vis));cal(1);for(int i=1;i<=N;i++){if(dp[i]<=N/2)printf("%d\n",i);}}return 0;
}

poj 2378 树型dp相关推荐

  1. POJ 2152 树型DP //很棒的题

    题意:Z国有n个城市,从1到n给这些城市编号.城市之间连着高速公路,并且每两个城市之间有且只有一条通路.不同的高速公路可能有不同的长度.最近Z国经常发生火灾,所以当地政府决定在某些城市修建一些消防站. ...

  2. 其他OJ 树型DP 选课

    在朱全民的PPT介绍的一个树型DP经典题,<选课>,中文题目,不结束 找了很久找到了可以提交的OJ,重庆八中 http://www.cqoi.net:2012/JudgeOnline/pr ...

  3. 【树型DP】BZOJ1564 二叉查找树(noi2009)

    标签: 二叉查找树 [题目描述] 已知一棵特殊的二叉查找树.根据定义,该二叉查找树中每个结点的数据值都比它左儿子结点的数据值大,而比它右儿子结点的数据值小. 另一方面,这棵查找树中每个结点都有一个权值 ...

  4. 【树型DP】加分二叉树

    问题 b: [树型DP]加分二叉树 时间限制: 1 Sec  内存限制: 64 MB 提交: 8  解决: 6 [提交] [状态] [讨论版] [命题人:admin] 题目描述 科技忽略了过程就是魔法 ...

  5. 二叉苹果树(树型DP+背包)

    二叉苹果树 有一棵苹果树,如果树枝有分叉,一定是分2叉(就是说没有只有1个儿子的结点).这棵树共有N个结点(叶子点或者树枝分叉点),编号为1-N,树根编号一定是1. 我们用一根树枝两端连接的结点的编号 ...

  6. POJ3342 Party at Hali-Bula(树型DP求最大独立集+唯一解判断)

    题意: 公司参加聚会,要求员工不能和他的上司同时参加,求最多能参加几个人并且判断解是否唯一. 要点: 树型DP的经典题,用dp[u][1]表示选取u的最大值,dp[u][0]表示不选取u的最大值,容易 ...

  7. 虚树+树型DP SDOI2011消耗战

    <虚树+树型DP> SDOI2011消耗战 #include <iostream> #include <cstdio> #include <cstring&g ...

  8. BSOJ 2923:藤原妹红 MST+树型DP

    2923 -- [模拟试题]藤原妹红 Description 在幻想乡,藤原妹红是拥有不老不死能力的人类.虽然不喜欢与人们交流,妹红仍然保护着误入迷途竹林村民.由于妹红算得上是幻想乡最强的人类,对于她 ...

  9. 洛谷P3354 Riv河流 [IOI2005] 树型dp

    正解:树型dp 解题报告: 传送门! 简要题意:有棵树,每个节点有个权值w,要求选k个节点,最大化∑dis*w,其中如果某个节点到根的路径上选了别的节点,dis指的是到达那个节点的距离 首先这个一看就 ...

最新文章

  1. 语言兔子繁衍问题讲解_二年级思维数学:位置问题,找到重复部分是解题关键...
  2. PostgreSQL索引页
  3. 如何在Android主屏幕上添加热点快捷方式
  4. Ubuntu Sudo 无法解析的主机
  5. 【服务端渲染】NuxtJS基础
  6. linux命令行安装tomcat8,CentOS环境下安装JDK、Tomcat及相关Linux命令
  7. j2ee 上传下载 小记
  8. 很囧的实验:一辆奥迪究竟值多少女大学生? 阅读 3056 回复 12 [回复] [编辑] [修改]...
  9. 用php循环星期一到星期日,php – 获取最后一个星期一 – 星期日的日期:有更好的方法吗?...
  10. 多思计组原理虚拟实验室_多思计算机组成原理虚拟实验室
  11. 银联证书下载及导出流程
  12. java 使用的钩子_Java 钩子程序
  13. 方舟开服务器游戏基础管理设置
  14. 读后感--《魔鬼数学:大数据时代,数学思维的力量》
  15. 计算机组成原理实验报告一静态随机存储器
  16. 计算机的第一道安全防线是,网络安全的第一道防线是
  17. Excel中的三种平均值算法
  18. 应付款与分工之利读后感
  19. 条码打印软件有关打印错误的解决方法
  20. 程序员的生活之二--吃在大连(要来大连的,不看这个可就可惜了!看了不顶,那就太没义气了!)...

热门文章

  1. [转]html控件、html服务器控件和web服务器控件的区别
  2. oracle使用表空间语句,oracle表空间语句
  3. python分类算法评估模型_Python机器学习(sklearn)——分类模型评估与调参总结(下)...
  4. 计算机网络rip工作原理,12. 小型网络 RIP 协议工作原理
  5. 朋友圈点赞点用例的设计点
  6. php自动include,PHP include_php
  7. java反射创建带参数对象_反射 Java反射对象创建 - 闪电教程JSRUN
  8. 【5】测试用例设计-状态迁移图
  9. linux环境配置sonarqube
  10. java buffer类_Java ByteBuffer类