摘要: 题意 "题目链接" Sol 知道FFT能做字符串匹配的话这就是个裸题了吧。。 考虑把B翻转过来,如果$\sum_{k = 0}^M (B_{i k} A_k)^2 B_{i k} A_k = 0$ 那么说明能匹配。然后拆开三波FFT就行了 阅读全文
posted @ 2019-02-09 20:03 自为风月马前卒 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 异或高斯消元的板子题。 bitset优化一下,复杂度$O(\frac{nm}{32})$ 找最优解可以考虑高斯消元的过程,因为异或的特殊性质,每次向下找的时候找到第一个1然后交换就行,这样显然是最优的 cpp include using namespace std; co 阅读全文
posted @ 2019-02-09 17:32 自为风月马前卒 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 不会卡常,自愧不如。下面的代码只有66分。我实在懒得手写平衡树了。。 思路比较直观:拿个set维护每个数出现的位置,再写个线段树维护区间和 cpp include define LL long long const int MAXN = 5e5 + 10, INF = 1 阅读全文
posted @ 2019-02-09 16:44 自为风月马前卒 阅读(444) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" 给出长度为$n$的序列,每次询问区间$[l, r]$,要求最大化 $max |x − y| : L_i ≤ x, y ≤ R_i and A_x = A_y$ Sol 标算神仙的一批看不懂。 维护好每个数出现的左右位置之后直接上不删除莫队就行了 cpp include const 阅读全文
posted @ 2019-02-09 14:37 自为风月马前卒 阅读(408) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol ODT板子题。 操作1直接拆区间就行。 cpp include define fi first define se second const int MAXN = 2e5 + 10; using namespace std; inline int read() { cha 阅读全文
posted @ 2019-02-09 10:42 自为风月马前卒 阅读(329) 评论(0) 推荐(0) 编辑
摘要: 题解 题意 "题目链接" Sol ODT板子题..... cpp // luogu judger enable o2 include define LL long long define Fin(x) freopen( x".in", "r", stdin); define Fout(x) freo 阅读全文
posted @ 2019-02-09 10:02 自为风月马前卒 阅读(380) 评论(4) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol ODT板子题。就是用set维护连续段的大暴力。。 ~~然鹅我抄的板子本题RE提交AC??。。~~ ~~具体来说,用 这个数据测试下面的代码,然后在79行停住,看一下bg和i的值会发生神奇的事情。。~~ 问题已解决,确实是那位博主写错了, 只要把split(l)和split 阅读全文
posted @ 2019-02-09 09:38 自为风月马前卒 阅读(542) 评论(0) 推荐(0) 编辑

Contact with me