[51nod1577]异或凑数】的更多相关文章

题目   点这里看题目. 分析   以下设\(k=\lfloor\log_2(\max a)\rfloor\).   关于异或凑数的问题自然可以用线性基处理,即如果可以插入到线性基,就说明无法凑出这个数.   于是我们就有了一个线段树或者倍增维护区间线性基的方法,时间是\(O(k^2nlog_2n)\).   ......算了.   考虑对每一个点维护线性基\(B_i\),维护的是\([1,i]\)的 " 最优 " 线性基. " 最优 " 意味着线性基中的元素在原序…
原文链接https://www.cnblogs.com/zhouzhendong/p/51Nod1577.html 题意 给定一个长度为 n 的序列. 有 m 组询问,每一组询问给出 L,R,k ,询问 L,R 区间内是否能找出一些数,使它们 XOR 起来等于 k . $n,m\leq 5\times 10^5,  0\leq a_i,k< 2^{30}$ 题解 由于 $n,m$ 同阶,所以以下时间复杂度描述时,对于 $n,m$ 不加区分. 线性基合并是 $O(\log ^2 a_i)$ 的.…
国际惯例的题面:异或凑出一个数,显然是线性基了.显然我们能把区间[l,r]的数全都扔进一个线性基,然后试着插入w,如果能插入,则说明w不能被这些数线性表出,那么就要输出"NO"了.然而怎么得到这个线性基?我们有两种很显然的暴力:线段树和单调莫队.然而亲测它们都不能AC......(不排除我写丑了)考虑思考一下性质:如果我们能对于每个结束位置,用这个位置前面尽可能靠后的数构造出一个线性基,那么我们查询的时候是不是就能取出结束位置为r的线性基限制用的数出现位置不能早于l,然后直接查询就好了…
思路真的是挺巧妙的. 让我惊叹,原来线性基还能这么做?!?! 好吧,这种取若干个数异或凑数的题目怎么能少的了线性基呢? 但是,问题集中在于怎么快速提取一个区间的线性基 暴力n^2 线段树维护线性基?分区间logn,合并一次logn^2 O(nlogn^3)GG 然后就一脸不可做了. 题解:“容易”想到,一个线性基里面的元素可以用线性基外的元素替换的. 只要保证还能表示出原来的线性空间,那么一定可以替换. 所以,我们给每个点维护一个线性基. lb[r]表示,由1~r的所有元素选择构成的线性基,其中…
\(OTZgengyf\)..当场被吊打\(QwQ\) 思路:线性基 提交:\(3\)次 错因:往里面加数时\(tmp.p\)与\(i\)区分不清(还是我太菜了) 题解: 我们对每个位置的线性基如此操作: 对于每一位,保存尽量靠后的数: 所以每一位还要记录位置. (后文区分"位"(二进制位)和"位置"(原数组中的第几位),每个位置都有\(30\)位) 具体来说,就是从高位向低位扫,如果我们当前的数能被放入某一位,如果这一位没有数,则直接放入:否则比较出现位置,如果当…
前言: 这几天被公司临时拉到去做Android IM即时通信协议实现,大致看了下他们定的协议,由于之前没有参与,据说因服务器性能限制,只达成非明文传递,具体原因我不太清楚,不过这里用的加密方式是采用异或加密.这种加密方式在之前做Android加密记事本的时候采用过这种加密方式.今天已经把客户端心跳维持.数据包解析对接完了,总结一下这种加密方式. 其他几种加密方式: Android数据加密之Rsa加密 Android数据加密之Aes加密 Android数据加密之Des加密 Android数据加密之…
环境: A机:RHEL5.5 + Oracle 10.2.0.4 B机:RHEL5.5 需求: A机10.2.0.4数据库,在B机升级到11.2.0.4,应用最新PSU补丁程序. 目录: 一. 确认是否可以直接升级 二. B机安装11g软件,打好PSU补丁 三. B机环境变量检查 四. B机创建需要的目录 五. A机原库升级前检查 5.1 从B机上传utlu112i.sql脚本到A机 5.2 A机执行utlu112i.sql进行升级前检查 5.3 根据检查结果调整A机数据库 六. A机备份原库…
Given a non-empty array of numbers, a0, a1, a2, … , an-1, where 0 ≤ ai < 231. Find the maximum result of ai XOR aj, where 0 ≤ i, j < n. Could you do this in O(n) runtime? Example: Input: [3, 10, 5, 25, 2, 8] Output: 28 Explanation: The maximum resul…
异或的符号是^.按位异或运算, 对等长二进制模式按位或二进制数的每一位执行逻辑按位异或操作. 操作的结果是如果某位不同则该位为1, 否则该位为0. xor运算的逆运算是它本身,也就是说两次异或同一个数最后结果不变,即(a xor b) xor b = a.xor运算可以用于简单的加密,比如我想对我MM说1314520,但怕别人知道,于是双方约定拿我的生日19880516作为密钥.1314520 xor 19880516 = 20665500,我就把20665500告诉MM.MM再次计算20665…
Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 5646   Accepted: 1226 Description In an edge-weighted tree, the xor-length of a path p is defined as the xor sum of the weights of edges on p: ⊕ is the xor operator. We say a path the xor-l…