LuoGu P2420 让我们异或吧
其实......这就是个SB题,本来看到这个题,和树上路径有关
于是——我就欣喜地打了一个树剖上去,结果嘞,异或两遍等于没异或
所以这题和LCA屁关系都没有,所以这题就是个树上DFS!!!!
所以它为啥是绿的?不知道.....某谷地评分就是不能信
于是就A了呗
#include <iostream>
#include <cstdlib>
#include <cstdio>
const int N=1e5+5;
struct edge{
int to,next,data;
}e[(N<<1)];
int n,tot,head[N];
int Xor[N],m;
inline void build(int u,int v,int w){
e[++tot].next=head[u];e[tot].to=v;
head[u]=tot;e[tot].data=w;return ;
}
inline void dfs(int cur,int anc){
for(int i=head[cur];i;i=e[i].next){
register int k=e[i].to;
if(k==anc) continue;
Xor[k]=Xor[cur]^e[i].data;
dfs(k,cur);
}
return ;
}
int main(){
scanf("%d",&n);
for(int i=1;i<n;++i){
register int u,v,w;
scanf("%d%d%d",&u,&v,&w);
build(u,v,w);build(v,u,w);
}
dfs(1,0);
scanf("%d",&m);
while(m--){
register int u,v;
scanf("%d%d",&u,&v);
printf("%d\n",Xor[u]^Xor[v]);
}
return 0;
}
LuoGu P2420 让我们异或吧的更多相关文章
- 洛谷 P2420 让我们异或吧 解题报告
P2420 让我们异或吧 题目描述 异或是一种神奇的运算,大部分人把它总结成不进位加法. 在生活中-xor运算也很常见.比如,对于一个问题的回答,是为1,否为0.那么: (A是否是男生 )xor( B ...
- 洛谷——P2420 让我们异或吧
P2420 让我们异或吧 题目描述 异或是一种神奇的运算,大部分人把它总结成不进位加法. 在生活中…xor运算也很常见.比如,对于一个问题的回答,是为1,否为0.那么: (A是否是男生 )xor( B ...
- 「 Luogu P2420 」 让我们异或吧
# 解题思路 两点之间的路径的话一定经过它们两个 LCA,这一点已经是显而易见的,那么再来看看异或的性质. $$a\ xor\ b\ xor\ b = a\\ a\ xor\ a=0\\ a\ xor ...
- 洛谷 [P2420] 让我们异或吧
某两点之间的路径上所有边权的异或值即dis1^dis2--^disn. 由于x^y^y=x,所以dfs预处理出每一点到根节点的异或值,对于每次询问,直接输出 disu^disv. #include & ...
- Luogu P4551 最长异或路径
题目链接 \(Click\) \(Here\) \(01Trie\)好题裸题. 取节点\(1\)为根节点,向下扫每一个点从根节点到它路径上的异或和,我们可以得到一个\(sumx[u]\). 现在路径异 ...
- 题解 p2420 让我们异或吧
传送门 #include<iostream> #include<cstdio> #include<cstring> using namespace std; ;in ...
- P2420 让我们异或吧
题目描述 异或是一种神奇的运算,大部分人把它总结成不进位加法. 在生活中…xor运算也很常见.比如,对于一个问题的回答,是为1,否为0.那么: (A是否是男生 )xor( B是否是男生)=A和B是否能 ...
- 洛谷P2420 让我们异或吧(树链剖分)
题目描述异或是一种神奇的运算,大部分人把它总结成不进位加法. 在生活中…xor运算也很常见.比如,对于一个问题的回答,是为1,否为0.那么: (A是否是男生 )xor( B是否是男生)=A和B是否能够 ...
- [洛谷P2420] 让我们异或吧
题目链接:让我们异或吧 题目描述 异或是一种神奇的运算,大部分人把它总结成不进位加法. 在生活中…xor运算也很常见.比如,对于一个问题的回答,是为1,否为0.那么: (A是否是男生 )xor( B是 ...
随机推荐
- Ubuntu18.04下Python Web环境搭建
Python3的安装与卸载 pip, pip3的安装 Django2.x的安装 mysql的安装及命令行工具mycli的安装 virtualenv及virtualenvwrapper的安装 IPyth ...
- ue4配置分析记录
相关代码 UObject::CallFunctionByNameWithArguments ExecuteConsoleCommand << 配置.ini[???.类名] //要先 ...
- Understanding a project which include NodeJS, Webpack, Vue
公司有一个web 项目是用 Vue 写的, 前段时间负责这个tool的人离职了没有人维护,其他人又很忙,我就去看了一下以便以后能加一些新功能在上面 没有接触过Vue, 这些理解了一下关系做一些学习记录 ...
- 第27月第10天 cmake
1.error: tool 'xcodebuild' requires Xcode的解决办法 sudo xcode-select --switch /Applications/Xcode.app/Co ...
- python之字符串常用的方法
1. 去掉空格或换行符 s='. hello .world .\n' new_s = s.strip()#默认去掉字符串前后的空格和换行符 new_s = s.strip('.')#可传参去掉字符串前 ...
- lcx工具使用
0x01 为什么要作端口转发? 如果外网服务器,我们直接连接其端口就能进行访问,不需要进行端口转发.所以端口转发常用于穿透防火墙. 0x02 快速使用 前提:你的计算机处于公网,被控制的计算机能访问外 ...
- Java内存模型-final域的内存语义--没明白,预留以后继续理解
https://www.cnblogs.com/yuanfy008/p/9349275.html 来自 Java并发编程(1)-Java内存模型
- Content-disposition中Attachment和inline的区别
1.Content-disposition中Attachment和inline的区别java web中下载文件时,我们一般设置Content-Disposition告诉浏览器下载文件的名称,是否在浏览 ...
- Vue对变量的监控
Vue对变量的监控 watch: { a(val, oldVal) {//普通的watch监听 if (val == "1") { $('#myModal').modal(); } ...
- Windows Server 2008 R2忘记密码导致无法修改密码
其实有个记住密码的工具还是简单的,登陆系统后,CMD输入命令: net user administrator NewPassword 新密码即时生效