04 2019 档案
摘要:A.最长不会超过a的个数的两倍-1。 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<algorithm> 5 #define rep(i,l,r) for (int i=(l); i<=(r); i++)
阅读全文
摘要:经典问题(以下全部默认$n\leqslant m$):$\sum\limits_{i=1}^n\sum\limits_{j=1}^{m}gcd(i,j)=\sum_{d=1}^n\varphi(d)\lfloor\frac{n}{d}\rfloor\lfloor\frac{m}{d}\rfloor$
阅读全文
摘要:A.奇数配偶数。 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<algorithm> 5 #define rep(i,l,r) for (int i=(l); i<=(r); i++) 6 typedef
阅读全文
摘要:A.若存在解则一定存在某个i使得a[i]>a[i+1],翻转它即可。 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<algorithm> 5 #define rep(i,l,r) for (int i=(
阅读全文
摘要:A.一定是前半段白后半段黑,枚举分界点预处理前后缀和。 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #include<iostream> 5 #define rep(i,l,r) for (int i=(l); i<=
阅读全文
摘要:A.直接判。 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #include<iostream> 5 #define rep(i,l,r) for (int i=(l); i<=(r); i++) 6 typedef l
阅读全文
摘要:二进制分组思想很简单,就是把下标拆成几个2的次幂的和,对每个2的次幂维护答案,复杂度是暴力重构一组的复杂度乘log(如果可以归并可能会少个log)。 这里其实想整理下一些修改独立的数据结构题的套路。 离线算法: (1) 只有插入:CDQ分治。 (2) 有删除: 支持删除操作:CDQ分治。 不支持删除
阅读全文
摘要:D1T1:与或和 对每位处理,问题变成所有内部不包含0/1的矩阵的个数,单调栈维护即可。 1 #include<cstdio> 2 #include<algorithm> 3 #include<cstring> 4 #define rep(i,l,r) for (int i=(l); i<=(r);
阅读全文
摘要:A.(c1=0&&c3>0)||(c1!=c4) 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #include<iostream> 5 #define rep(i,l,r) for (int i=(l); i<=(r)
阅读全文
摘要:A.找到最大值x,再找出最长的连续的x。 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<algorithm> 5 #define rep(i,l,r) for (int i=(l); i<=(r); i+
阅读全文
摘要:https://www.luogu.org/blog/Sooke/solution-p5280 首先想到对线段树上每个点分别维护有多少棵线段树在它上有标记(f[]),然后想到对于每个操作,根据转移的不同分成5种点。 为了满足第三类点的转移要求,再维护g[],转移类似分类讨论即可。 最后发现前三类点是
阅读全文
摘要:前两种情况显然直接manacher,对于第三种,枚举回文中心,二分回文半径,哈希判断即可。
阅读全文
摘要:D1T1:异或粽子 显然令b[]为a[]的前缀和,那么就是在b[]中任取两数异或,求异或结果前k大和。 于是暴力$O(n^2)$显然,60pts。 1 #include<cstdio> 2 #include<algorithm> 3 #define rep(i,l,r) for (int i=(l)
阅读全文
摘要:用LCT支持:在线加边,单点修改,求一个两个点路径上的所有边BCC的点权和。 用LCT维护边BCC的形态(即缩边双之后的树),2,3操作都是LCT基本操作,重点考虑加边操作。 当这条边的两个端点属于同一BCC时显然没有任何影响。当两个端点不在同一个连通块里时直接在LCT上做link(bel[x],b
阅读全文

浙公网安备 33010602011771号