最新要闻
- 环球观焦点:Intel 56核心刚出生就落伍!AMD Zen4撕裂者下半年来袭:96核心
- 【新视野】力压美国印度!中国富豪全球第一:钟睒睒蝉联首富 马化腾张一鸣紧随其后
- 石榴汁弄衣服上怎么洗才能不会变干(石榴汁弄衣服上怎么洗)
- 环球最资讯丨机箱中的海景房 乔思伯TK-1双曲面侧透游戏机箱579元:颜值爆表
- 成都比亚迪、特斯拉、宝马三车相撞 特斯拉和宝马车轮飞了
- 【世界速看料】新能源汽车充电时为何要交停车费 专家:可防止充电之后不挪窝
- 当前热点-全球首枚3D打印火箭!美国“人族一号”发射失败
- 明年底有望普及!PCIe 5.0 SSD尴尬了 买的人太少:性能残血、价格死贵
- 我和你本应该各自好各自坏是什么歌?我和你本应该各自好各自坏歌词
- mirror男团中谁的人气最高?mirror男团年龄排序
- 亡羊补牢的亡是什么意思?亡羊补牢成语故事
- 班主任管理班级的策略与措施是什么?班主任教育随笔示范
- 《最终幻想16》新片段 宠物可以防止你迷路
- 卿卿日常李薇的真实身份是什么?卿卿日常郝葭死了吗?
- 质感旗舰!真我GT Neo5 SE未来感十足:纳米级光哑熔合工艺打造
- 女子不敢在隧道开车 交给无证男子驾驶 听到后果惊恐万分
广告
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
天天简讯:权值(点分治)
【资料图】
264. 权值 - AcWing题库
引: \(\color{Yellow}水何澹澹,山岛竦峙。\)
Solution
这是一棵无根树, 所以据此使用点分治。
点分治适合处理大规模的树上路径信息问题。
我们先随意选择一个节点作为根节点 \(\mathit{rt}\),所有完全位于其子树中的路径可以分为两种,一种是经过当前根节点的路径,一种是不经过当前根节点的路径。对于经过当前根节点的路径,又可以分为两种,一种是以根节点为一个端点的路径,另一种是两个端点都不为根节点的路径。而后者又可以由两条属于前者链合并得到。所以,对于枚举的根节点 \(\mathit{rt}\),我们先计算在其子树中且经过该节点的路径对答案的贡献,再递归其子树对不经过该节点的路径进行求解。
-- Oi Wiki
有了这个思路, 我们可以只考虑经过当前子树的根的路径,对于新加入的一个子节点信息,我们统计出到达每个节点的距离,并使用dp来维护信息即可。
Attention
点分治的本质是优化暴力--Pink Rabit
我们向下递归处理子树时,要找到子树的重心并将其赋为根节点,这样每递归一次,最大的子树大小不超过整棵树大小的一般,最多递归 \(O(logN)\) 层,因此保证了时间复杂度。
时间复杂度 \(O(n \ log \ n)\)
C++ 代码
#include #define for_(i,a,b) for (int i = (a); i < (b); i++)#define rep_(i,a,b) for (int i = (a); i <= (b); i++)#define per_(i,a,b) for (int i = (a); i >= (b); i--)#define ll long longusing namespace std;const int maxn = 4e5 + 10, mod = 1e9 + 7;// mod = 1949777;const int inf = 2e9, up = 1e7;const double EPS = 1e-3;int n, m, sum;int tot = 1, rt;int nxt[maxn], head[maxn], to[maxn], c[maxn];int q[maxn], sz[maxn], maxx[maxn], vis[maxn], dist[maxn];void add(int u, int v, int w) {nxt[++tot] = head[u]; to[tot] = v; c[tot] = w; head[u] = tot; }void Siz(int u, int fa) {sz[u] = 1;maxx[u] = 0;for (int i = head[u]; i; i = nxt[i]) {int v = to[i];if (v != fa && !vis[v]) {Siz(v, u);maxx[u] = max(maxx[u], sz[v]);sz[u] += sz[v];}}maxx[u] = max(maxx[u], sum - maxx[u]);if (maxx[u] < maxx[rt]) rt = u;}int dd[maxn], cnt;int p[maxn], l[maxn];void Dist(int u, int D, int fa) {dd[++cnt] = D;p[u] = p[fa] + 1;l[cnt] = p[u];for (int i = head[u]; i; i = nxt[i]) {int v = to[i];if (v != fa && !vis[v]) {Dist(v, D + c[i], u); }}}int k;int ans = inf;queue tag;int dp[up];void dfs(int u) {vis[u] = 1;dp[0] = 0;tag.push(0);for (int i = head[u]; i; i = nxt[i]) {int v = to[i];if (!vis[v]) {cnt = 0;Dist(v, c[i], 0);for (int j = 1; j <= cnt; j++) {if (dd[j] <= k && dp[k - dd[j]] != -1) ans = min(ans, dp[k - dd[j]] + l[j]);}for (int j = 1; j <= cnt; j++) {if (dd[j] <= k) {if (dp[dd[j]] == -1 || dp[dd[j]] > l[j]) dp[dd[j]] = l[j], tag.push(dd[j]); }}}}while(!tag.empty()) dp[tag.front()] = -1, tag.pop();for (int i = head[u]; i; i = nxt[i]) {int v = to[i];if (!vis[v]) {rt = 0; sum = sz[v]; Siz(v, 0); Siz(rt, 0);dfs(rt);}}}signed main() {ios::sync_with_stdio(false);cin.tie(nullptr);cin >> n >> k;memset(dp, -1, sizeof(dp));rep_(i, 1, n - 1) {int u, v, w; cin >> u >> v >> w; u++, v++; add(u, v, w); add(v, u, w);}maxx[0] = inf;sum = n;rt = 0;Siz(1, 0);Siz(rt, 0);dfs(rt); cout << (ans != inf ? ans : -1) << endl;return 0;}
关键词:
热推荐:【操作系统】面试题总结(持更)
天天简讯:权值(点分治)
当前速看:JavaScript学习笔记
环球最资讯丨WMS深入浅出
环球关注:剑指 Offer 17. 打印从 1 到最大的 n 位数(java解题)
环球观焦点:Intel 56核心刚出生就落伍!AMD Zen4撕裂者下半年来袭:96核心
【新视野】力压美国印度!中国富豪全球第一:钟睒睒蝉联首富 马化腾张一鸣紧随其后
石榴汁弄衣服上怎么洗才能不会变干(石榴汁弄衣服上怎么洗)
环球最资讯丨机箱中的海景房 乔思伯TK-1双曲面侧透游戏机箱579元:颜值爆表
成都比亚迪、特斯拉、宝马三车相撞 特斯拉和宝马车轮飞了
天天简讯:Go语言:利用 TDD 逐步为一个字典应用创建完整的 CRUD API
【世界播资讯】springcloud Stream整合rabbitmq消息驱动生产者踩坑
【天天报资讯】Vue之移动端viewport-vw适配
LevelDb-用户接口
世界视讯!Spring Cloud Alibaba微服务搭建(二)- 安装mysql
【世界速看料】新能源汽车充电时为何要交停车费 专家:可防止充电之后不挪窝
当前热点-全球首枚3D打印火箭!美国“人族一号”发射失败
明年底有望普及!PCIe 5.0 SSD尴尬了 买的人太少:性能残血、价格死贵
我和你本应该各自好各自坏是什么歌?我和你本应该各自好各自坏歌词
mirror男团中谁的人气最高?mirror男团年龄排序
亡羊补牢的亡是什么意思?亡羊补牢成语故事
班主任管理班级的策略与措施是什么?班主任教育随笔示范
《最终幻想16》新片段 宠物可以防止你迷路
看点:MS SQL服务器教程_编程入门自学教程_菜鸟教程-免费教程分享
卿卿日常李薇的真实身份是什么?卿卿日常郝葭死了吗?
质感旗舰!真我GT Neo5 SE未来感十足:纳米级光哑熔合工艺打造
女子不敢在隧道开车 交给无证男子驾驶 听到后果惊恐万分
196元暴涨至1910元 民宿回应五一价格翻十倍:先挂着 随时调整
最资讯丨专盯未成年?女孩添加“爱豆”QQ后被骗贷款3万4
连鸽两次 世界首枚3D打印火箭将再发射:这回能顺利吗?
全球热点!Python工具箱系列(二十八)
天天通讯!不知道
酝酿产智融合“化学反应” 浙江衢州集中签约多家研究院
天天日报丨“帝王座驾、以辇为尊” 比亚迪云辇系统官宣:或为底盘新技术
天天热文:早午餐合成一顿?医生提醒:细胞营养需求加大 更易长胖
即时看!警惕!义乌一女子险被电商“客服”骗走800万
当前观点:配可滑动中控屏、宾利同款B柱挂钩!极氪X内饰官图发布
每日看点!【数论与组合数学 3】Hensel 引理、原根
世界观察:Android使用SurfaceView实现签名板
每日聚焦:机器学习算法(三):基于horse-colic数据的KNN近邻(k-nearest neighbors)预测分类
全球微头条丨领域驱动设计DDD应用与最佳实践
环球观天下!Linux安装Redis教程
看热讯:小孩飞机票怎么收费
1000N连续旋转爆震 国内全新发动机点火成功:颠覆性优势
自爆卡车?奔驰EQE车库逆行:反怪特斯拉Model 3车主不让路
精选!男子在电竞酒店枕头下发现一窝老鼠 官方回应引网友吐槽:怎么能住
微头条丨8只海豚在美国海滩搁浅全部死亡 6只被安乐死
焦点速递!吉利全新SUV博越COOL官图发布:四出排气、1.5升发动机
要去海南旅游的老友们请注意,海南离岛免税购物,有新变化!
今日热闻!数据库系统原理之关系数据库
深入消息队列MQ,看这篇就够了!
全网最详细中英文ChatGPT-GPT-4示例文档-从0到1快速入门条目分类应用——官网推荐的48种最佳应用场景(附python/node.js/curl命令源
环球动态:以太网发明者鲍勃·梅特卡夫获图灵奖 计算机界的诺贝尔奖
又一股惨遭退市!市值暴跌99%
世界热议:《CS2》地图对比:起源2加持画质更明亮、细节丰富
去年净赚499亿元创纪录!保时捷2.7万名员工每人6.7万元奖金
Java八股文之基础篇
全球简讯:在 Arch Linux 中安装 GNOME 桌面所需步骤介绍
当你对 redis 说你中意的女孩是 Mia
环球时讯:琥珀手串会变色吗 琥珀手串会越戴越亮吗
环球看点!全球首个空中飞行出租车来了:巴黎开测 2024奥运会要用
【天天报资讯】抗早泄国产“伟哥”药物上市 市场有多大?专家称将翻倍增长 国内患者众多
全球首搭帝瓦雷音响!比亚迪腾势N7猎跑SUV亮相:运动低趴
当前速讯:鸡鸣寺游客爆满设反悔门引导离寺 网友神评:我佛果然慈悲 给反悔机会
全球今日报丨读C#代码整洁之道笔记04_重构C#代码识别代码坏味道
北方多地遭遇沙尘暴 PM爆表:气象台再发预警 还没退去
环球头条:流浪小狗乞求收养者一起带走玩具熊:画面让养狗人士泪目 为何被遗弃
今日关注:iPhone 14首发的车祸检测功能让人崩溃!苹果iOS 16.4将优化升级
世界热讯:读Java性能权威指南(第2版)笔记25_性能测试方法上
每日头条!LOL2023狗熊怎么出装(上单狗熊2023出装顺序)
精选!等了 11年 《CSGO2》电竞网游终于官宣:画质大升级 免费更新
天天简讯:使用C#开发微信公众号对接ChatGPT和DALL-E
今日关注:关于人工智能的思考,写在chatGPT爆火之时
Vue——initRender【八】
环球快讯:NVIDIA突然复活SLI!但不是你想的那样
每日看点!比尔·盖茨谈ChatGPT 赞其1980年以来最革命性技术进步
天天即时:爱子飞机上死亡:母亲怒告世界最大航司美国航空
谷歌的“GPT”终于憋出来了!但是 也不比百度强多少啊
当前热议!抖音救人一命!男子发头孢配酒视频获救:客服教科书式报警
头条:交700个税的工资多少_j700
今日讯!SEO优化:友情链接!真心换真心?
通过 poe 免费使用ChatGPT、GPT-4
天天观察:71.C++标准库类型string
CTAS建表时报错ORA-65114
Go HTTP编程
天天热点!苹果官方推荐!iNote灵感笔记新版发布:超紧凑模式来了
热讯:金士顿无敌了!拿下2022年全渠道SSD市场占有率第一
高德、口碑正式合并:阿里旗下本地到店业务将统一整合
热推荐:国科微:目前晶圆产能较前两年已趋于缓和
全球最新:关于基于AWS-Cli的方式对RDS资源批量添加tag的方法
全球微速讯:小红书去水印技巧合集(亲测有效!!!)
每日热点:Git基本使用
RHEL无法配置网关问题一则
世界快看点丨加快步伐!腾讯高管:“生成式AI”或纳入微信和QQ
天津金逸影城
2023年3月22日(软件工程日报)
阿里云大使和代理商的优惠的区别与选择
动态焦点:美债市场危机四伏 “安全资产”吸引力或进一步下降
3GB显存被封杀!《光环无限》都不让玩
Opera浏览器推送97.0.4719.26更新:集成ChatGPT与AI总结功能