博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nssl1254-A(林下风气)【树形dp】
阅读量:2023 次
发布时间:2019-04-28

本文共 565 字,大约阅读时间需要 1 分钟。

正题


题目大意

求一棵树上有多少个联通块的最大值和最小值差为k。


解题思路

其实直接用差<=k的减去差<k的就是等于k的答案。

然后枚举一个点为最大值,然后只往小编号扩张就好了(不重)。


code

#include
#include
#include
#define N 4000#define XJQ 19260817#define ll long longusing namespace std;struct node{
ll to,next;}a[N*2];ll ls[N],w[N],ans1,ans2,n,k,tot,x,y,in[N];void addl(ll x,ll y)//加边{
a[++tot].to=y; a[tot].next=ls[x]; ls[x]=tot;}ll dp(ll x,ll fa,ll root,ll W)//dp{
ll rep=1; for(ll i=ls[x];i;i=a[i].next) {
int v=a[i].to; if(v==fa||w[a[i].to]>w[root]) continue; if(w[root]-w[v]>W) continue; if(v

转载地址:http://sxzaf.baihongyu.com/

你可能感兴趣的文章
Vue(3)- 安装脚手架、过滤器、生命周期的钩子函数、vue-router基本使用
查看>>
日期时间变量的处理
查看>>
决策树 Decision Tree
查看>>
用PBD制作餐饮店KPI分析仪-入门篇
查看>>
c++启动另一个软件
查看>>
无盘安装系统之Windows 7篇
查看>>
autorun.inf 配置说明
查看>>
U盘制作电脑启动钥匙
查看>>
Linux下c编程系统函数调用Signal信号的介绍
查看>>
linux下c编程之内存共享shemget函数的实现及案例-bmi体重身高测试2
查看>>
enum枚举介绍
查看>>
什么是博士?
查看>>
vue项目运行 ENOTFOUND localhost 报错
查看>>
Vue 封装 自定义toast 插件并随处调用
查看>>
canvas 画圆角矩形头像合成图片
查看>>
使用react 脚手架创建项目
查看>>
vue 生命周期浅出
查看>>
vue---子父、父子、非父子组件通信
查看>>
Python开发环境(2):启动Eclipse时检测到PYTHONPATH发生改变
查看>>
Python基础(1):dir(),help()
查看>>