摘要: link #思路: 将序列转化为前缀和的异或数组,问题就转化成了寻找两个数使得异或值大于等于$k$并且距离最小。 考虑用$01$字典树维护,枚举一遍右端点,求他之前的所有数与他的异或值的最大值,如果$>=k$的话就尝试更新答案。然后将该端点加入字典树。 #代码: #include<bits/stdc 阅读全文
posted @ 2021-07-22 20:17 OvO1 阅读(129) 评论(0) 推荐(0) 编辑
摘要: link #思路: #代码: #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef unsigned long long ull; typedef pair<ll, ll>PLL; typedef pai 阅读全文
posted @ 2021-07-22 19:09 OvO1 阅读(65) 评论(0) 推荐(0) 编辑
摘要: l #思路: dfs搜素即可,从最高位开始搜。 如果该位的左儿子或右儿子只有一个,继续搜索有的;否则,两者取min #代码: // Problem: CF1285D Dr. Evil Underscores // Contest: Luogu // URL: https://www.luogu.co 阅读全文
posted @ 2021-07-22 10:15 OvO1 阅读(41) 评论(0) 推荐(0) 编辑