abc434e

news/2025/11/30 20:23:54/文章来源:https://www.cnblogs.com/SigmaToT/p/19290157

https://atcoder.jp/contests/abc434/tasks/abc434_e
这道题如果我们考虑将 \(x - r\)\(x + r\) 连边,它肯定会形成一堆联通块。
我们看这个联通块的形状,如果是一棵树,因为我们的任务是给每一条边都选一个相邻的点,所以此时我们最大就是可以选边的数量个点。
比如说下面这个:
image
其中橙色的点是我们选的点,箭头代表每一条边对应所选的点。
如果不是一棵树,我们可以选出它任意一个生成树,这样答案就是点数减去 \(1\),然后我们再考虑其他的边中的任意一个边,显然我们可以从这条边所连的点中再选取一个,这样的话最大就是联通块中点的数量。
image
就像这样,其中绿色的是我们选的那个生成树,橙色的那条边是我们另选出来的那条边,紫色的点是我们生成树中选的点,紫色的箭头表示我们生成树中的边对应所选的点,橙色的点是我们另选出来的那条边所选的点。


然后我们发现,答案其实就是总的点数减去树的个数。
实现的话我们可以使用并查集来维护(记得对点离散化)。

点击查看代码
#include <iostream>
#include <algorithm>
#include <vector>
#include <map>using std::cin;
using std::cout;
const int N = 2e5 + 10;int tot;
int go[N << 1];
int a[N << 1];
int sizep[N << 1];
int sizee[N << 1];
std::vector<int> vec;
std::map<int, int> map;int find(int x)
{if (x == go[x])return x;return go[x] = find(go[x]);
}int main()
{int n;cin >> n;for (int i = 1; i <= n; ++i){int x, r;cin >> x >> r;a[++tot] = x + r;a[++tot] = x - r;vec.push_back(x - r);vec.push_back(x + r);}for (int i = 1; i <= 2 * n; ++i)go[i] = i, sizep[i] = 1;std::sort(vec.begin(), vec.end());vec.erase(std::unique(vec.begin(), vec.end()), vec.end());int all = vec.size();for (int i = 1; i <= tot; ++i)map[a[i]] = std::lower_bound(vec.begin(), vec.end(), a[i]) - vec.begin() + 1;for (int i = 2; i <= tot; i += 2){int u = find(map[a[i - 1]]);int v = find(map[a[i]]);if (u == v)sizee[u]++;else{go[u] = v;sizee[v] += sizee[u] + 1;sizep[v] += sizep[u];}}int ans = all;for (int i = 1; i <= all; ++i){if (find(i) == i)ans -= (sizee[i] == sizep[i] - 1);}cout << ans << '\n';return 0;
}

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

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

相关文章

AOI在PCB制造领域的核心应用 - 教程

AOI在PCB制造领域的核心应用 - 教程2025-11-30 20:16 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !imp…

30岁后还能轻松瘦?2025权威认证高效减脂方案,破解冬季代谢迟缓难题

当环境温度降至 10℃以下,人体进化而来的温度调节机制本是为了抵御寒冷与饥荒,却在现代社会沦为体重管理的潜在威胁。研究表明,冬季棕色脂肪活性的微弱增强,远不足以抵消久坐室内、高热饮食、光照减少的负面影响 —…

实用指南:Linux网络HTTP(上)(7)

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

数字转十六进制工具更新:支持二进制数值表达式

本文介绍了numbers-to-hex.py工具版本0.0.4的更新内容,新增了-e选项用于处理二进制数值表达式如79+1,并提供了该版本文件的下载链接及哈希校验值。Update: numbers-to-hex.py Version 0.0.4 | Didier Stevens Didier…

2025 摩擦焊接机品牌优选指南:国产振动摩擦焊接机厂商的技术赋能之路

2025年摩擦焊接机品牌优选:晨凤实业与峰湃科技的技术革新与行业赋能 摩擦焊接技术作为现代制造业的关键连接工艺,正迎来前所未有的发展机遇。在众多焊接设备供应商中,上海晨凤实业发展有限公司与峰湃科技(上海)有…

提供GEO优化培训与GEO优化服务商的公司精选推荐

一、GEO优化:AI搜索时代的营销新范式 生成式引擎优化(GEO)是专为AI大模型(如DeepSeek、豆包、文心一言等)设计的内容优化方法,通过提升品牌在AI生成答案中的可见性和权威性,实现"零点击触达"的营销效果。…

环保型成膜助剂生产企业有哪些?成膜助剂一吨起批的厂家TOP前十权威名单

在涂料、胶粘剂等精细化工领域,成膜助剂作为核心功能性辅料,如同工业生产中的 “隐形推手”,其环保指标不仅决定着终端产品的质量上限,更关乎企业能否通过严苛的环保法规认证。在全球 “双碳” 目标与 VOCs(挥发性…

编程语言与信号处理领域科学家获奖研究解析

本文介绍两位科学家在编程语言和信号处理领域的重要贡献,涵盖自动化推理工具开发、子空间聚类技术研究,以及这些技术在软件安全和机器学习中的应用价值。科学家荣誉与贡献 两位科研人员近期因其在研究领域的长期贡献…

国内生产过碳酸钠的厂家有哪些?成膜助剂直销厂家:质量好、工业级的过碳酸钠厂家名单

在化工产业体系中,过碳酸钠与工业级碳酸钠作为基础且关键的化工原料,支撑着多个下游领域的发展。过碳酸钠凭借漂白、杀菌、供氧等多重环保功能,广泛应用于洗涤日化、污水处理、纸浆漂白等场景,其质量直接影响终端产…

国内生产成膜助剂的厂家有哪些?工业级、质量好的成膜助剂榜单权威厂家解析

在涂料、日化等行业中,成膜助剂是不可或缺的关键辅料,其质量优劣直接关乎下游产品的成膜效果、耐候性能与环保水平。近年来,国内涂料产业蓬勃发展,产量已占据全球总量 40% 以上。规模的扩张,使得市场对工业级成膜…

20232411 2025-2026-1 《网络与系统攻防技术》实验七实验报告

1.实验内容 总结一下本周学习内容,不要复制粘贴 2.实验过程 3.问题及解决方案问题1:XXXXXX 问题1解决方案:XXXXXX 问题2:XXXXXX 问题2解决方案:XXXXXX - ...4.学习感悟、思考等 xxx xxx

成膜助剂源头工厂在哪里?成模性好的成膜助剂厂家推荐:成膜助剂直销厂家TOP盘点

在涂料、胶粘剂等精细化工领域,成膜助剂作为调控聚合物粒子聚结过程的关键功能性助剂,其供应链稳定性与产品性能参数直接关联下游制品的成膜质量、耐候性等核心指标。随着全球制造业对工业辅料精细化要求的提升,市场…

过碳酸钠生产厂家哪家好?全球过碳酸钠供过碳酸钠源头厂家:质量好、含氧量高的过碳酸钠厂家推荐

过碳酸钠作为一种环保型氧系漂白剂,凭借漂白、杀菌、供氧等多重特性,广泛应用于洗涤日化、污水处理、水产养殖等诸多领域。其产品质量直接决定终端应用效果,而 “生产厂家哪家好”“质量好的厂家推荐”“含氧量高的…

为你的右键菜单添加快捷复制路径的选项!

欢迎前往b站查看演示视频:https://www.bilibili.com/video/BV1GPSvBGEF8/实现效果:实现步骤: 下载我提供的文件(区分Win10/11): https://wwbsy.lanzoue.com/i59CX3cj686f运行后重启资源管理器即可作者:茄汁面出…

成膜助剂生产厂家哪家好?成膜助剂源头工厂在哪里?质量好、成模性好的成膜助剂厂家榜单权威精选

在涂料、胶粘剂等行业的生产过程中,成膜助剂作为关键辅助材料,其质量直接影响漆膜的成膜性、稳定性与耐候性。优质的成膜助剂能有效降低产品最低成膜温度,提升涂膜性能,适配多样化的应用场景。随着环保标准的不断收…

软件工程基础第三次作业

这个作业属于哪个课程 软件工程课程班级首页这个作业的目标 以小组为单位,完成一个“电梯演讲”作业。姓名-学号 高越聪-2023329301092 黄备煊-2023329301091视频地址 [https://www.bilibili.com/video/BV1XcSvBVEjG/…

国内过碳酸钠源头工厂在哪里?过碳酸钠直销厂家名单:含氧量高的过碳酸钠厂家TOP榜单权威推荐

过碳酸钠作为一种具有漂白与杀菌双重功效的环保型化工原料,凭借其绿色安全的特性,在洗涤、印染、水处理等领域占据重要地位。随着全球可持续发展理念的深入,市场对过碳酸钠的需求呈稳步上升趋势,这也促使其生产供应…

成膜助剂源头工厂在哪里?成模性好的成膜助剂厂家推荐:国内成膜助剂质量好的厂家十大名单推荐

成膜助剂作为涂料、胶粘剂等行业的关键辅料,其质量与成模性直接影响下游产品性能,而直销厂家与源头工厂的选择更是关系到供应稳定性与成本控制。国内成膜助剂产业已形成多区域集聚格局,源头工厂主要分布在化工基础扎…

快递比价寄件体系科技解析:基于PHP+Vue+小软件的高效聚合配送解决方案

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

[豪の算法奇妙冒险] 代码随想录算法训练营第十天 | 232-用栈实现队列、225-用队列实现栈、20-有效的括号、1047-删除字符串中的所有相邻重复项

LeetCode232 用栈实现队列、LeetCode225 用队列实现栈、LeetCode20 有效的括号、LeetCode1047 删除字符串中的所有相邻重复项代码随想录算法训练营第十天 | 232-用栈实现队列、 225-用队列实现栈、20-有效的括号、1047…