摘要: #include <iostream> #include <cstdio> #include <cstring> using namespace std; int read() { int re = 0 , sig = 1; char c = getchar(); while(c < '0' || 阅读全文
posted @ 2020-11-23 20:28 追梦人1024 阅读(91) 评论(0) 推荐(0)
摘要: 题目 传送门 思路 这·是·蓝·题?! 这不是裸的trie吗,感觉最多去到绿色 跟这题几乎一样,甚至更简单,对trie求前缀和即可,水题,不细讲 代码 #include <iostream> #include <cstdio> #define nn 1000010 using namespace s 阅读全文
posted @ 2020-11-23 19:46 追梦人1024 阅读(124) 评论(0) 推荐(0)
摘要: 题目 传送门 思路 别在意这是一道紫题,其实还是能做的 首先要知道:异或运算满足交换律,结合律,a xor a = 0,一个点A到另一个点B的异或路径长度等于(A到C的异或路径长度 xor B到C的异或路径长度),其中C为任一点 为什么? 假设C是树的根,后者只是比前者多跑了2遍C到lca(A,B) 阅读全文
posted @ 2020-11-23 19:38 追梦人1024 阅读(121) 评论(0) 推荐(0)
摘要: 题目 传送门 思路 作为一道蓝题,这题并不难想,就是细节有点多 真的挺好的一道题,把线段树和trie很好地融合到一起 以样例为例,建一棵如下的01trie,其中,红色数字就是输入进来的a,根到该数字的路径形成的数字就是该数字下标的二进制表示(从低位到高位) 例如,4这个数字:根到4的路径为0->0- 阅读全文
posted @ 2020-11-23 11:43 追梦人1024 阅读(329) 评论(0) 推荐(2)