洛谷U639786 树的颜色询问 题解 树上启发式合并(dsu on tree)

news/2025/12/9 18:56:14/文章来源:https://www.cnblogs.com/quanjun/p/19327999

题目链接:https://www.luogu.com.cn/problem/U639786

题目大意:

树上每个节点有一个颜色,节点 \(i\) 的颜色是 \(c_i\)

对于每个节点,求它所在的子树中出现次数最多的颜色出现了多少次。

解题思路:

树上启发式合并.模板题。

这里我采用了一种 自己的写法。

一些变量的含义:

  • t[x]:表示颜色 \(x\) 目前出现了多少次;
  • cnt[x]:表示有多少种颜色出现了 \(x\) 次;
  • mx:出现次数最多的颜色出现了多少次;
  • ans[u]:由于是离线处理,所以记录 \(u\) 对应的答案,即 \(u\) 所在的子树中出现次数最多的颜色出现了多少次。

示例程序:

#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 5;int n, c[maxn], t[maxn], cnt[maxn], mx, ans[maxn], sz[maxn], son[maxn];
vector<int> g[maxn];// 新增一个颜色为x的节点
void add_c(int x) {cnt[ t[x] ]--;t[x]++;cnt[ t[x] ]++;mx = max(mx, t[x]);
}// 删除一个颜色为x的节点
void del_c(int x) {cnt[ t[x] ]--;t[x]--;cnt[ t[x] ]++;if (!cnt[mx]) mx--;
}void getsz(int u, int p) {sz[u] = 1;for (auto v : g[u]) {if (v != p) {getsz(v, u);sz[u] += sz[v];if (sz[v] > sz[ son[u] ])son[u] = v;}}
}void dfs_clean(int u, int p) {del_c(c[u]);for (auto v : g[u])if (v != p)dfs_clean(v, u);
}void dfs(int u, int p, bool keep) {for (auto v : g[u])if (v != p && v != son[u])dfs(v, u, false);if (son[u])dfs(son[u], u, true);for (auto v : g[u])if (v != p && v != son[u])dfs(v, u, true);add_c(c[u]);if (!ans[u]) // 第一次访问到的时候是答案ans[u] = mx;if (!keep)dfs_clean(u, p);
}int main() {scanf("%d", &n);for (int i = 1; i <= n; i++)scanf("%d", c+i);for (int i = 1, u, v; i < n; i++) {scanf("%d%d", &u, &v);g[u].push_back(v);g[v].push_back(u);}getsz(1, -1);dfs(1, -1, true);for (int i = 1; i <= n; i++)printf("%d\n", ans[i]);return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/995378.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年热门的牛羊肉贴体膜/贴体膜厂家最新实力排行

2025年热门的牛羊肉贴体膜/贴体膜厂家实力排行行业背景与市场趋势随着全球生鲜食品贸易的持续增长和消费者对食品安全、保鲜要求的不断提高,贴体膜包装技术近年来获得了快速发展。特别是在牛羊肉等高价值生鲜食品领域…

Webpack与Vite的常用设置及主要差异分析

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025 年雅思培训口碑机构 TOP5 推荐

2025 年雅思培训口碑机构 TOP5 推荐一、2025 年雅思培训口碑机构 TOP5 推荐 (一)短期冲分王者:无老师国际 封闭班提分效率行业领先,顶尖师资 智能体系双重保障。作为覆盖全国 56 个城市的高端品牌,无老师国际封…

灵光网页版AI助手,特斯拉集成Grok语音导航,阿里Qwen3-TTS横空出世

🌟 蚂蚁集团推出灵光网页版AI助手:30秒打造个性化小应用全浏览器操作:无需下载,直接通过电脑或手机浏览器访问,实现“灵光对话”与“灵光闪应用”双功能。 自然语言生成应用:输入需求即可30秒内生成、编辑并管理…

软件工程学习日志2025.12.9

📖 今日学习内容概述 根据给定的需求描述,设计了一个支持多仓库管理的仓储管理系统原型,重点完成了数据库结构设计和业务开发框架的搭建。 🧠 核心知识要点数据库设计要点• 物资唯一性约束:通过(物资名称, 规格…

2025年口碑好的网架工程/徐州煤棚网架厂家选购指南与推荐

2025年口碑好的网架工程/徐州煤棚网架厂家选购指南与推荐行业背景与市场趋势随着我国工业化和城市化进程的不断推进,网架结构作为一种高效、经济、环保的建筑形式,在工业厂房、体育场馆、机场航站楼、电厂干煤棚等大…

2025雅思培训机构怎么选?这篇攻略帮你避坑+精准提分!

2025雅思培训机构怎么选?这篇攻略帮你避坑+精准提分!一、选机构前必做的 2 件事:先搞懂自己,再挑对方向 在雅思备考的征程中,选对培训机构就像为航船找准方向,至关重要。但在一头扎进机构对比前,我们得先做好两…

2025年热门的格栅机耙齿用户口碑最好的厂家榜

2025年热门的格栅机耙齿用户口碑的厂家榜 行业背景与市场趋势 随着环保政策的日益严格和污水处理技术的不断升级,格栅机耙齿作为污水处理前端的关键设备,市场需求持续增长。格栅机主要用于拦截和清除污水中的固体悬…

英语自学工具进化论:告别哑巴英语,走向真实对话时代

英语自学工具进化论:告别哑巴英语,走向真实对话时代是否觉得英语学习枯燥难以坚持?或是缺少真实语境练习的机会?如今,AI技术与全球社交结合的英语学习工具已经能提供沉浸式、个性化的学习体验。以下推荐或许能为你…

学英语,最好的软件其实是“组合拳”哪些英语软件最有效?

学英语,最好的软件其实是“组合拳”哪些英语软件最有效?在寻找“最好”的英语学习软件时,很多人会陷入一个误区——期待找到一款“全能神器”,能解决从发音、词汇、听力到口语的所有问题。但现实是,就像我们不会用…

2025年质量好的平版胶印油墨/胶印油墨厂家最新热销排行

2025年质量好的平版胶印油墨/胶印油墨厂家热销排行行业背景与市场趋势随着全球印刷行业向绿色化、数字化方向转型,平版胶印油墨市场正经历着深刻变革。2025年,环保型油墨已成为市场主流需求,据行业数据显示,全球胶…

2025年比较好的融雪伴热带/高温伴热带厂家实力及用户口碑排行榜

2025年比较好的融雪伴热带/高温伴热带厂家实力及用户口碑排行榜行业背景与市场趋势随着工业自动化水平的提升和极端气候现象的频发,融雪伴热带和高温伴热带作为重要的温度维持设备,在石油化工、建筑供暖、市政工程等…

【亲测】AI学术搜索哪家强?试了4款国产顶流,结果完全出乎意料!

豆包快、秘塔深、AMiner准、Kimi新,谁是论文神器?2025年了,如果你还在一篇篇手动下载PDF、由于找不到核心文献而头秃,那你真的out了!最近,国产AI工具迎来了“神仙打架”的局面。作为一名常年和文献打交道的“科研…

为旧版Visual Studio客户端现代化身份验证:从传统令牌到Entra认证的过渡

本文介绍了Azure DevOps为提升安全性和现代化水平,正在逐步淘汰旧版Visual Studio客户端库依赖的传统身份验证机制,并将其无缝迁移至基于Microsoft Entra ID的现代身份验证。这一变更将增强安全性,但也可能导致更频…

详细介绍:[Column] Perplexity 如何构建 AI 版 Google | 模型无关架构 | Vespa AI检索

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025年英语自学软件精选:免费高效,轻松开启学习之旅

2025年英语自学软件精选:免费高效,轻松开启学习之旅在2025年的今天,利用科技工具辅助英语学习已成为主流。无论是从零开始的初学者,还是希望提升特定技能的进阶者,选择一款合适的软件都能让学习事半功倍。本文精选…

2025年全国太阳能路灯厂家五大最新推荐:涵盖太阳能路灯、景观灯、庭院灯、高杆路灯、LED路灯厂家选择指南

引言 随着“双碳”目标深入推进与绿色低碳理念深入人心,太阳能路灯凭借零排放、低运维、高适配等优势,已成为新农村建设、市政道路、景区园区等户外照明场景的首选方案。然而,当前市场鱼龙混杂,部分厂家以低价吸引…

2025实测|5款英语学习软件封神!从零基础到流利说全靠它

2025实测|5款英语学习软件封神!从零基础到流利说全靠它作为深耕教育领域的博主,每天都有粉丝问:“学英语到底选什么软件?” 试过30+款工具后,我筛选出5款“精准打击”不同痛点的神器——不管你是练口语、刷听力,…

2025中国薪酬管理系统测评与选型指南:数字化转型下的企业决策

引言:复杂环境下的薪酬管理挑战 在快速变化的中国商业环境中,薪酬管理已不再是简单的工资核算,而是企业人力资源管理(HRM)乃至整体运营效率的关键环节。中国独特的税务体系、复杂的社会保险和住房公积金政策,以及…

Oracle中行转列、列转行

1、行转列:PIVOT 说明:PIVOT (SUM(聚合值) FOR 待转换的列名 IN (待转换的列名里面的值 转换后列的别名))with temp as(select 张三 NAME ,语文 course,98 score from dual union allselect 张三 NAME ,数学 course,…