深入理解异或运算实例一.代码实现
#include<stdio.h>
intmain()
{
inta=10;
intb=12;
a=a^b;
b=a^b;
a=a^b;
printf("%d%d",a,b);
system("pause");
return0;
}二.异或性质每一个元素就是它自身的加法逆元(a^a=0)三.汇编分析1.取出a和b的值2.将a的值放在eax中..
分类:
编程语言 时间:
2016-02-14 08:04:34
阅读次数:
161
题意:
给出一个长度为n的初始序列,和m次操作;
A操作:在序列后面加入一个数;
Q操作:给出一段区间[l,r]和一个数x,求区间中的p使p的后缀异或和与x的异或值最大;
n,m
题解:
可持久化数据结构(2/4)进行中... ...
先做一个转化,因为是在序列后面加数,维护后缀和并不容易;
但是由于异或性质可以转化成前缀和的问题;
也就是在区间中选一个数,使其与另一...
分类:
其他好文 时间:
2015-07-25 18:35:02
阅读次数:
160
题意:
多组数据、
给你一颗树,
然后求一条最长异或路径,
异或路径长度定义为两点间简单路径上所有边权的异或和。
题解:
首先无根树转有根树再在树上跑一遍算出每个点到根的异或和。
然后两点间异或路径长度就是a[i]*a[j]。
因为lca之前那一段都被异或了两次搞没了。
然后求个线性基,然后随便搞搞就可以?可以WA了!
因为那么算哪是简单路径啊,或者说,那特喵的...
分类:
其他好文 时间:
2015-02-04 16:40:01
阅读次数:
228
题面:
最富有的人
Time Limit: 1 Sec Memory Limit: 64 MB
Description
你经过了一段时间的打工,老板带你来到了他的私人金库。
在你的面前有n堆金子,老板要求你只能选择其中的两堆,而你的工资为这两堆金子价值的xor值,你想成为最富有的人,你就要做出最优的选择。
/*
名词解释:
xor运算,...
分类:
其他好文 时间:
2015-02-03 13:27:02
阅读次数:
186
Exclusive-OR
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 2177 Accepted Submission(s): 603
Problem Description
You are not gi...
分类:
其他好文 时间:
2014-08-12 22:04:02
阅读次数:
267