Educational Codeforces Round 132 (Rated for Div. 2) E. XOR Tree(启发式合并+贪心)
题目
n(n<=2e5)个点的树,点i权值ai(1<=ai<2^30)
修改最少的点的权值,使得树上不存在异或和为0的简单路径,输出最少的点数
权值可以被修改成任意正整数(可以是无限大)
思路来源
官方题解 & zlt题解

题解
假设树形是固定的,dfs往上回溯的时候,
如果一条路径xor为0,这条路径上必须改一个值,
贪心地来看,lca必须要改
由于可以改成任意值,改lca视为把这棵子树断掉
XOR(u,v) = XOR(根到u) xor XOR(根到v) xor a[lca(u,v)]
那就是判一下某个点的子树是否存在两个点的祖先异或,等于本身的权值
这个可以启发式合并的时候,把小的集合往大的集合上挂的时候判断
删除某个点,就可以认为是清空集合
心得
自己的写法怎么写都写不对,都wa8,感觉是启发式合并公有map导致的
只能抄官方题解,每个节点维护一个set了
代码
#include<iostream>
#include<cstdio>
#include<unordered_map>
#include<set>
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int,ll> P;
#define fi first
#define se second
#define pb push_back
const int N=2e5+10,INF=0x3f3f3f3f,mod=1e9+7;//998244353
int n,x,y,ans;
set<int>now[N];
int a[N],sz[N];
bool ban[N];
vector<int>E[N];
void dfs(int u,int fa,int w){bool ban=0;now[u].insert(w);for(auto &v:E[u]){if(v==fa)continue;dfs(v,u,w^a[v]);if(now[u].size()<now[v].size())now[u].swap(now[v]);for(auto &x:now[v]){if(now[u].count(x^a[u])){ban=1;break;}}for(auto &x:now[v]){now[u].insert(x);}now[v].clear();}if(ban){now[u].clear();ans++;}
}
int main(){scanf("%d",&n);for(int i=1;i<=n;++i){scanf("%d",&a[i]);}for(int i=2;i<=n;++i){scanf("%d%d",&x,&y);E[x].push_back(y);//E[i].pb(P(fa,w));E[y].push_back(x);//E[i].pb(P(fa,w));}dfs(1,0,a[1]);printf("%d\n",ans);return 0;
}
相关文章:
Educational Codeforces Round 132 (Rated for Div. 2) E. XOR Tree(启发式合并+贪心)
题目 n(n<2e5)个点的树,点i权值ai(1<ai<2^30) 修改最少的点的权值,使得树上不存在异或和为0的简单路径,输出最少的点数 权值可以被修改成任意正整数(可以是无限大) 思路来源 官方…...
JavaScript 基本数据类型的详解
JavaScript的基本数据类型 以下都是JS内置的几种类型 数据类型描述number数字,不区分整数和小数string字符串类型booleantrue 真, false 假undefined表示未定义的值null只有唯一的值 null,表示空值 number 数字类型 JavaScript 中不区分整数和浮点数&…...
DDR5内存相比DDR4内存的优势和区别?选择哪一个服务器内存配置能避免丢包和延迟高?
根据幻兽帕鲁服务器的实际案例分析,选择合适的DDR4与DDR5内存大小以避免丢包和延迟高,需要考虑以下几个方面: 性能与延迟:DDR5内存相比DDR4在传输速率、带宽、工作电压等方面都有显著提升,但同时也伴随着更高的延迟。D…...
篮球游戏中的挑战精神与怄气心理:扣篮被帽后的再度冲击
在篮球比赛中,扣篮无疑是最具观赏性和震撼力的动作之一,它展示了球员的爆发力、技巧和自信。而在篮球游戏中,玩家即便面临连续扣篮被盖帽的挫折,仍渴望继续杀入内线尝试扣篮的现象,实则是体育竞技精神、挑战意识与怄气…...
JavaScript高级程序设计
前言 《JavaScript高级程序设计》 第1章——什么是JavaScript DOM将整个页面抽象为一组分层节点。 BOM用于支持访问和操作浏览器的窗口。 第2章——HTML中的JavaScript 2.1 < script >元素 元素描述async立即开始下载脚本,但不能阻止其他页面动作&#…...
初阶数据结构:栈与队列
目录 1. 简述:栈2. 栈的功能分析与实现2.1 功能分析2.2 栈的实现2.2.1 栈的结构创建与初始化2.2.2 压栈,出栈与判空:2.2.3 获取栈顶元素,检索栈的长度与栈的销毁 3. 简述:队列4. 队列的功能分析与实现4.1 队列的功能分…...
Houdini学习笔记
按住Alt / 空格 左键:进行旋转 按住Alt / 空格 中间:移动屏幕画面 按住Alt / 空格 右键:缩放视口 如果不要Alt,就先按ESC,再去左键、中键、右键操作 这里有对应的层级关系,类似于树形结构ÿ…...
电销机器人识别客户情绪状态
最近有电销机器人需求的客户咨询我,你们OKCC的机器人可以识别客户的情绪变化吗?别人说目前电销机器人系统有支持的。 首先还是从原理的角度解答一下,是否能识别情绪状态。 是的,电销机器人可以识别客户的情绪状态。这可以通过语音…...
AI推介-大语言模型LLMs论文速览(arXiv方向):2024.02.25-2024.03.01
论文目录~ 1.Arithmetic Control of LLMs for Diverse User Preferences: Directional Preference Alignment with Multi-Objective Rewards2.Keeping LLMs Aligned After Fine-tuning: The Crucial Role of Prompt Templates3.Meta-Task Prompting Elicits Embedding from Lar…...
Cesium插件系列——3dtiles压平
本系列为自己基于cesium写的一套插件具体实现。 这里是根据Cesium提供的CustomShader来实现的。 在CustomShader的vertexShaderText里,需要定义vertexMain函数,例如下: struct VertexInput {Attributes attributes;FeatureIds featureIds;…...
APS面试审核准备的常规问题
之前根据其他人的经验贴,准备了一些可能APS 面试审核可能会遇到的常规问题,现在简单分享一下。 一般会考虑到留学资金来源,在德国能不能顺利毕业;学的是什么专业内容之类的,判断去德国会不会好好学习;对德国…...
jvm 基础知识和jvm 调优
类装载分为以下 5 个步骤: 加载:根据查找路径找到相应的 class 文件然后导入; 检查:检查加载的 class 文件的正确性; 准备:给类中的静态变量分配内存空间; 解析:虚拟机将常量池中的符…...
USB4之ASM2464PD与ASM2464PDX兼容与运用
首先在NVMe上运用: 一:ASM2464PD(现在可以做带PD的方案) 二:ASM2464PDX 1: Application Guide- CFX card reader NVMe SSD 2:ASM2464PDX Application Guide- NVMe SSD x4 with data clone 三ÿ…...
python笔记_进制
二进制 进位规则:满2进1 范围:0,1 符号:以0b和0B开头 八进制 进位规则:满8进1 范围:0-7 符号:以0o和0O开头 十进制 进位规则:满10进1 范围:0-9 十六进制 进位规则ÿ…...
面试数据库篇(mysql)- 05什么是聚簇索引什么是非聚簇索引
聚集索引选取规则: 如果存在主键,主键索引就是聚集索引。如果不存在主键,将使用第一个唯一(UNIQUE)索引作为聚集索引。如果表没有主键,或没有合适的唯一索引,则InnoDB会自动生成一个rowid作为隐藏的聚集索…...
如何开好一家汽车美容店,汽车美容保养与装饰教学
一、教程描述 本套教程共由17张VCD组合而成,教程内容主要包括:美容店的设立和管理,汽车系统与内部结构,汽车美容工具与美容设备,美容用品的选择与使用,车身打蜡镀膜与内外清洁,车身抛光与漆面处…...
Taro + node.js 注册 仿照java 中的加盐算法
1.需求 为了让用户的密码更加保密 我们在md5 之前 在加一个随机数 用java 的说法 叫做 加盐算法 2.代码 //H5注册async H5Register(register) {if (!register.phone ||!register.password ||!register.confirmPassword ||!register.yzmCode ||!register.registerCode) {thr…...
全量知识系统问题及SmartChat给出的答复 之9 三套工具之4语法解析器 之2
Q23. 一个语言的语法简约规则 这些规则显示show 在一个给定单词(a given word)的右边或左边可能出现的单词的类别。句型的多样性variety不是复杂文法(a complex grammar)的结果,而是简单语法(a simple gra…...
简洁版用户登录系统
前端页面: 用户登录首页: <!doctype html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport"content"widthdevice-width, user-scalableno, initial-scale1.0, maximu…...
Android 监听网络状态变化
文章目录 Android 监听网络状态变化封装工具类使用 Android 监听网络状态变化 封装工具类 <uses-permission android:name"android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name"android.permission.ACCESS_WIFI_STATE"…...
2026年大模型学习路线(非常详细)AI大模型学习路线图:从入门到高薪就业
本文提供了一套完整的AI大模型学习路线图,从数学与编程基础、机器学习入门到深度学习、大模型探索及进阶应用等多个阶段进行了详细阐述。文章推荐了丰富的学习资源,包括经典书籍、在线课程和实践项目,并强调了社区参与和持续学习的重要性。此…...
Multi-Agent 任务分解框架:从目标到子任务的可执行清单
Multi-Agent 任务分解框架:从目标到子任务的可执行清单 一、 引言 (Introduction) 1.1 钩子:当你拥有“一支 AI 团队”却不知道怎么派活? 假设你正在创业,或者在公司担任产品/技术负责人,现在需要完成一件综合性、跨专业、依赖协作反馈的任务——比如: 从零搭建一个面向…...
XHS-Downloader:3种高效方法帮你轻松下载小红书无水印内容
XHS-Downloader:3种高效方法帮你轻松下载小红书无水印内容 【免费下载链接】XHS-Downloader 小红书(XiaoHongShu、RedNote)链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品、用户链接…...
终极AI唇形同步指南:用sd-wav2lip-uhq打造专业级口型匹配视频
终极AI唇形同步指南:用sd-wav2lip-uhq打造专业级口型匹配视频 【免费下载链接】sd-wav2lip-uhq Wav2Lip UHQ extension for Automatic1111 项目地址: https://gitcode.com/gh_mirrors/sd/sd-wav2lip-uhq 想要制作逼真的AI配音视频,却总是被不自然…...
OV2640寄存器配置黑魔法:手把手教你用ESP32-S3调出专业级画质
OV2640寄存器配置黑魔法:手把手教你用ESP32-S3调出专业级画质 在嵌入式视觉领域,OV2640这颗200万像素的图像传感器堪称常青树。它价格亲民、资料丰富,但想要榨干它的性能潜力,却需要深入理解其寄存器配置的奥秘。本文将带你从ISP底…...
为什么93%的AIAgent在复杂任务中“想得清却走不远”?SITS2026深度拆解规划-执行失配症,附3套已验证Prompt-Action协同模板
第一章:SITS2026分享:AIAgent规划与推理能力 2026奇点智能技术大会(https://ml-summit.org) AI Agent 的规划与推理能力正从符号逻辑驱动迈向多模态协同增强的新阶段。在 SITS2026 技术分享中,核心聚焦于如何构建具备分层目标分解、动态环境…...
KP09 Encoder使用教程
注意:请不要同时将两个typec口接入数据线。 2026.3.22更新 汉化版VIAL改键软件,链接:VIAL汉化版——VIAL-JL – yoonas blog 2026.3.23更新 组合键设置 默认功能 1、默认键位 键盘有九个按键,两个旋钮,旋钮可以按下。上…...
从APB1总线时钟到定时器中断:N32G45x TIM2定时器配置全流程解析(附代码)
从APB1总线时钟到定时器中断:N32G45x TIM2定时器配置全流程解析(附代码) 在嵌入式开发中,定时器是最基础也最核心的外设之一。无论是实现精准延时、周期性任务触发,还是生成PWM波形,都离不开对定时器的深入…...
字节怎么就成了AI界黄埔军校?
现在国内AI圈但凡有点名气的大模型团队,不管是大厂还是六小龙,核心岗位里几乎都能找到从字节出来的人,而且很多都是骨干、负责人、甚至联创。 这很奇怪呀?字节的AI明明是国内第一梯队! 待遇也给得拉满,百…...
图像处理中卷积核的实战应用指南
1. 卷积核入门:图像处理的魔法滤镜 第一次接触卷积核时,我把它想象成Photoshop里的滤镜工具。就像给照片加磨皮效果一样,3x3或5x5的小矩阵能在图像上滑动,实时改变像素的呈现方式。但和普通滤镜不同,卷积核的每个数字都…...
