03 2019 档案

摘要:传送门 A.The Doors 看懂题目就会写的题 给一个 $01$ 序列,找到最早的位置使得 $0$ 或 $1$ 已经全部出现 #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<cm 阅读全文
posted @ 2019-03-31 22:37 LLTYYC 阅读(374) 评论(0) 推荐(0)
摘要:传送门 维护森林中点之间的连通性,有加边和删边操作,保证不出现环 显然直接 $LCT$ 维护,模板套进去就好了 阅读全文
posted @ 2019-03-31 13:27 LLTYYC 阅读(139) 评论(0) 推荐(0)
摘要:传送门 带修莫队,在原来的基础上加一个时间指针 $t$ 每次移动时除了 $l,r$ 移动 $t$ 也跟着移动,并更新状态 为了维护时间变化 所以维护一个 $pos[i]$ 表示第 $i$ 次修改的位置,$co[i]$ 表示第 $i$ 次修改的颜色 $pre[i]$ 表示第 $i$ 次修改前 $pos 阅读全文
posted @ 2019-03-31 13:22 LLTYYC 阅读(163) 评论(0) 推荐(0)
摘要:传送门 矩阵很大,但是发现 $n$ 很小,从这边考虑,对于一个一堆小矩阵放在一起的情况 考虑把每一块单独考虑然后方案再乘起来 但是这些奇怪的东西很不好考虑 所以暴力一点,直接拆成一个个小块 但是这样我们还要考虑到小矩形的限制,设 $f[i][S]$ 表示现在考虑完第 $i$ 个小块,小矩形的限制满足 阅读全文
posted @ 2019-03-31 13:08 LLTYYC 阅读(158) 评论(0) 推荐(0)
摘要:传送门 变元矩阵树定理:求所有生成树的总边积的和,行列式中 $A[i][i]$ 为总边权和,$A[i][j]$ 为 $i,j$ 之间边权相反数 这题显然考虑这个东西 但是不能直接把边权变成概率,还要考虑非树边出现的概率 就是说原本矩阵树可以求 $\sum _{Tree}\prod _{e\in Tr 阅读全文
posted @ 2019-03-30 16:08 LLTYYC 阅读(147) 评论(0) 推荐(0)
摘要:传送门 答案=没有限制的方案数 - (限制1公司没修的方案 ∪ 限制2公司没修的方案 ∪ 限制3公司没修的方案 ∪...∪ 限制n-1公司没修的方案) 矩阵树计算方案数,然后容斥 根据容斥原理 (限制1公司没修的方案 ∪ 限制2公司没修的方案 ∪ 限制3公司没修的方案 ∪...∪ 限制n-1公司没修 阅读全文
posted @ 2019-03-30 15:53 LLTYYC 阅读(134) 评论(0) 推荐(0)
摘要:传送门 对每一题单独考虑它的做对期望,设一题的选项数为 $p[i]$,然后对 $p[i]$ 和 $p[i-1]$ 的大小关系进行一波分类讨论并化简 然后发现 每题的期望就是 $1/max(p[i],p[i-1])$ 把每题的期望加起来就是答案了 阅读全文
posted @ 2019-03-30 12:09 LLTYYC 阅读(116) 评论(0) 推荐(0)
摘要:传送门 区间修改区间询问,考虑线段树维护 对于一个询问 $l,r$ ,如果我们能求出总每种情况的总花费,那么最终答案就是总花费除 $C^2_{r-l+1}$ 为了方便维护把每条边看成点,那么线段树有 $n-1$ 个叶子节点 考虑线段树两个相邻区间 $lc,rc$ 合并成区间 $O$ 显然先设 $su 阅读全文
posted @ 2019-03-29 20:00 LLTYYC 阅读(223) 评论(0) 推荐(0)
摘要:传送门 考虑一个位置答案传递性,如果某个位置的红宝石转动确定了,那么会引起连锁反应: 如图,绿色的转动确定了,那么那两个蓝色的转动也确定了 自己手玩一下,发现如果有解那么随便找一个开始然后一路玩下去最后一定会有解,如果一旦有冲突那么之后不管怎么调整也都一定无解,(因为调整最后又会绕回自己继续冲突) 阅读全文
posted @ 2019-03-27 22:06 LLTYYC 阅读(586) 评论(0) 推荐(0)
摘要:传送门 直接大力线段树套平衡树 线段树维护区间,平衡树维护权值 对于询问区间内排名为 $K$ 的值,二分答案然后判断 其余操作都很好搞了 复杂度 $O(nlog^3_n)$ ,然后就是丧心病狂的代码和卡常时间了QAQ 我这个傻逼的代码要开 $O2$ 才过得去QAQ 如果一开始建树时不要一个个插入而是 阅读全文
posted @ 2019-03-27 21:44 LLTYYC 阅读(140) 评论(0) 推荐(0)
摘要:传送门 看到森林有合并首先会想到 $LCT$ ,然后发现链上第 $K$ 小不可维护 感觉 $LCT$ 只维护合并也有点大材小用了,考虑合并时直接启发式合并就可以不用 $LCT$ 然后求第 $K$ 小显然考虑主席树 对每个节点维护一个主席树,维护它到树根这的一段区间,那么当前节点的线段树可以直接借用父 阅读全文
posted @ 2019-03-27 20:44 LLTYYC 阅读(198) 评论(0) 推荐(0)
摘要:传送门 首先显然我们可以维护一个二维前缀和 $O(1)$ 求出任意一个矩形的值 考虑枚举大矩形的左上角,并维护当前矩形中,小矩形的最小值 放一个图: 维护小矩形最小值先考虑暴力怎么搞 同样考虑枚举左上角,那么大概枚举过程可以长成这个样子: 发现可以先预处理出同一排竖下来的小矩形最小值,显然这个可以直 阅读全文
posted @ 2019-03-27 20:15 LLTYYC 阅读(207) 评论(0) 推荐(0)
摘要:传送门 求前 $K$ 小的数的和,考虑主席树 但是如果每个时间都暴力插入显然会GG 发现每个任务都是区间,查询是单点查询 所以考虑维护差分数组 直接用主席树维护差分数组,因为同一时间差分可能有多次修改,所以要把当前修改全部搞完才算当前时间的线段树 询问就在相应时间点的线段树上走 具体看代码理解吧 阅读全文
posted @ 2019-03-25 20:07 LLTYYC 阅读(309) 评论(0) 推荐(0)
摘要:传送门 设 $val[i]$ 为位置 $i$ 的值 维护 $ansL[i]$ 表示位置 $i$ 的数左边所有大于 $val[i]$ 的数的数量 维护 $ansR[i]$ 表示位置 $i$ 的数右边所有小于 $val[i]$ 的数的数量 考虑先求出一开始总的逆序对数 $ans$ 每次删除一个数 (位置 阅读全文
posted @ 2019-03-25 19:53 LLTYYC 阅读(224) 评论(0) 推荐(0)
摘要:传送门 二合一题.... 前面 $50$ 分: 考虑取书显然优先取厚的,所以答案满足单调性 发现 $P_{i,j}$ 不大,所以考虑二分最小厚度 $mid$,把大于等于 $mid$ 的书取走 维护 $cnt[i][j][k]$ 表示位置 $i,j$ 为右下角一直到 $1,1$ 的矩形内厚度大于等于 阅读全文
posted @ 2019-03-25 19:36 LLTYYC 阅读(209) 评论(0) 推荐(0)
摘要:传送门 看到最短容易想到二分答案,然后发现尺取法还更好搞 动态维护左右端点 $l,r$,维护 $p[i]$ 表示颜色 $i$ 最后一次出现的位置,$cnt$ 维护当前有几种不同颜色 随着 $l$ 增大,显然它的最小的 $r$ 是不降的,所以枚举 $l$,动态右移 $r$ ,维护 $p$ 并维护 $c 阅读全文
posted @ 2019-03-24 11:52 LLTYYC 阅读(184) 评论(0) 推荐(0)
摘要:传送门 看到求最小,考虑二分答案 发现二分答案后直接搞两个单调队列维护最大最小值就好了 然后就没有然后了 话说这题也可以用尺取法动态维护左右区间$O(n)$过... 阅读全文
posted @ 2019-03-24 11:42 LLTYYC 阅读(137) 评论(0) 推荐(0)
摘要:传送门 $N$ 太大了主席树过不了 考虑分块 对每个块内的元素排序,询问就对大块二分查找,对两边小的部分暴力枚举 修改时维护 $add[i]$ 标记,维护当前块内整块已经加的数 那么整块的就直接修改 $add$ ,两边小的部分就把那两个的块暴力修改然后重新排序 然后注意一下边界就完了 阅读全文
posted @ 2019-03-24 11:34 LLTYYC 阅读(265) 评论(0) 推荐(0)
摘要:传送门 如果一条边只要考虑 $a$ 的限制,那么显然最小生成树 但是现在有 $a,b$ 两个限制,所以考虑按 $a$ 从小到大枚举边,动态维护 $b$ 的最小生成树 考虑新加入的一条边 $x,y$ ,如果 $x,y$ 不在一颗树上显然直接加入,如果在一棵树上,考虑原本树上 $x$ 到 $y$ 的路径 阅读全文
posted @ 2019-03-23 16:20 LLTYYC 阅读(190) 评论(0) 推荐(0)
摘要:传送门 LCT裸题,设 $k[i]$ 为位置 $i$ 弹簧的弹力系数,那么从 $i$ 往 $i+k[i]$ 连一条边,显然所有边构成了一个森林 直接 LCT 维护森林,询问 $x$ 就把 $x$ 到根的路径连起来 ($access(x)$) ,然后输出 $x$ 的 $splay$ 的节点数就好了 修 阅读全文
posted @ 2019-03-22 10:39 LLTYYC 阅读(180) 评论(0) 推荐(0)
摘要:传送门 原题传送门... 考虑从后往前推 对于一个序列,记 $M$ 为 $1$, $F$ 为 $-1$ 考虑这个序列的后缀和: F F F M M M M M F F 0 1 2 3 2 1 0 -1 -2 -1 可以发现如果某个时刻后缀和大于 $1$ 了,那么序列就不合法 反之序列一定合法,证明 阅读全文
posted @ 2019-03-20 13:52 LLTYYC 阅读(215) 评论(0) 推荐(0)
摘要:传送门 考虑一颗 $n$ 个叶节点的菊花树的情况,边权均为1 显然直径数为 $n*(n-1)/2$(20分) 考虑两颗菊花树的情况: 那么直径有 $a*b$ 个,但是对于 $n$ 为大质数的情况还是不够(40分) 那么考虑三个菊花树的情况: 答案也十分显然,为 $a*(b+c)+b*c$ 所以枚举 阅读全文
posted @ 2019-03-19 21:25 LLTYYC 阅读(183) 评论(0) 推荐(0)
摘要:传送门 考虑前缀异或和 $b[i]$ 如果知道每个 $b[i]$ 就相当于知道所有数 初始知道 $b[0]$,每次操作 $l,r$ 就是求出 $b[l-1]\ xor\ b[r]$ 考虑转化成图论模型,把 $b[i]$ 看成点(包括 $b[0]$),每次操作相当于把两个点 $b[l-1],b[r]$ 阅读全文
posted @ 2019-03-17 20:05 LLTYYC 阅读(198) 评论(0) 推荐(0)
摘要:传送门 二叉堆计数显然可以递归处理 考虑两个二叉堆合并时的情况: 最小的数肯定在根的位置 设此时总的节点数为 $tot$,堆$A$的节点数为 $a$,我们显然可以从 $tot-1$ 个数中随意选出 $a$ 个数放到堆$A$中,剩下的数放到堆$B$中($tot-1$是因为根的值已经确定了) 考虑堆$A 阅读全文
posted @ 2019-03-13 14:08 LLTYYC 阅读(313) 评论(0) 推荐(0)
摘要:传送门 问最长简称最短,考虑二分答案 二分后开始考虑暴力枚举合法缩写 但是正常枚举时可能会重复 所以设 $ch[i][j][k]$ 表示第 $i$ 个人,当前到位置 $j$ 时,下一个字符为 $k+'a'$ 的最前面的位置 这样我们暴力 $dfs$ 时就不会重复枚举缩写了 预处理一波 $ch$ : 阅读全文
posted @ 2019-03-10 21:57 LLTYYC 阅读(304) 评论(0) 推荐(0)
摘要:传送门 显然的 $dp$ 设 $f[i]$ 表示点击第 $i$ 个音符时的最大价值,$t[i]$ 表示音符 $i$ 的准备时间 那么可以枚举 $1$ 到 $i-t[i]$ 的所有音符,如果 $j$ ,如果 $j+t[j]$ 小于等于 $i$ ,那么 $f[i]=max(f[i],f[j]+t[i]* 阅读全文
posted @ 2019-03-07 16:24 LLTYYC 阅读(258) 评论(0) 推荐(0)
摘要:传送门 考虑只有一个串的如何处理 显然直接后缀自动机统计不同的子串个数 考虑多个串分别构建后缀自动机 那么对于一个可能的合法子串,它在自动机上的匹配一定是先在第一个自动机的根节点开始一直跑,只有当前自动机没有转移边了,那就跑到下一个自动机继续转移 为了尽可能地匹配所以只有当前自动机没有转移边了,才跑 阅读全文
posted @ 2019-03-06 22:29 LLTYYC 阅读(286) 评论(0) 推荐(0)
摘要:因为文化课所以几乎没时间补题... 以下为传送门: D1 T1:#178. 「2019冬令营提高组」全连 Solution D1 T2:#179. 「2019冬令营提高组」原样输出 Solution D1 T3:#180. 「2019冬令营提高组」不同的缩写 Solution D2 T1:#181. 阅读全文
posted @ 2019-03-04 22:15 LLTYYC 阅读(442) 评论(0) 推荐(0)
摘要:传送门 显然的网络流,源点向所有题目连流量为1的边,表示一题只能用一次,题目向它的所有类型连边,流量设为1,类型向汇点连边流量为题目需要的该类型的数量 然后最大流 如果最大流小于总需要的类型题目数量则无解,否则说明有解 考虑找出方案,显然如果一题到一个类型的边被流了,那么这题就是用来当成该类型来用 阅读全文
posted @ 2019-03-04 22:09 LLTYYC 阅读(198) 评论(0) 推荐(0)