05 2019 档案

摘要:"原题链接" $EDU$出一道长链剖分优化$dp$裸题? 简化版题意 问你每个点的子树中与它距离为多少的点的数量最多,如果有多解,最小化距离 思路 方法1 . 用$dsu\ on\ tree$做到$O(nlogn)$ 方法2 . 考虑$dp$,也就是设$f[u][d]$表示以$u$为根的子树中有多少 阅读全文
posted @ 2019-05-29 21:04 dummyummy 阅读(247) 评论(0) 推荐(0)
摘要:"原题戳这里" 思路 分三种情况讨论: 1.有环 那显然是对于环长取个$gcd$ 2.有类环 也就是这种情况 1→2→3→4→5→6→7 , 1→8→9→7 假设第一条链的长度为$l_1$,第二条为$l_2$,那么$l_1$和$l_2$需要满足$l_1\equiv l_2(mod\ k)$,也就是$ 阅读全文
posted @ 2019-05-29 09:38 dummyummy 阅读(170) 评论(0) 推荐(0)
摘要:又是一道$SAM$维护$endpos$集合的题,我直接把 "CF700E" 的板子粘过来了QwQ 思路 如果我们有$[l,r]$对应的$SAM$,只需要在上面贪心就可以了。因为要求的是字典序比$T$大且最小的子串,我们从前到后让尽可能多的位相等,如果再也无法相等了就从后往前找一位变大。 但是每次询问 阅读全文
posted @ 2019-05-28 15:22 dummyummy 阅读(295) 评论(0) 推荐(0)
摘要:"RemoteJudge" 又是一道用线段树合并来维护$endpos$的题,还有一道见我的博客 "CF666E" 思路 先把$SAM$建出来 如果两个相邻的串$s_i$和$s_{i+1}$要满足$s_i$在$s_{i+1}$中至少出现了两次,那么$s_i$显然是$s_{i+1}$对应的结点在$par 阅读全文
posted @ 2019-05-28 09:29 dummyummy 阅读(434) 评论(0) 推荐(0)
摘要:"RemoteJudge" 题目大意 给你一个串$S$以及一个字符串数组$T[1...m]$,$q$次询问,每次问$S$的子串$S[p_l...p_r]$在$T[l...r]$中的哪个串里的出现次数最多,并输出出现次数。 如有多解输出最靠前的那一个。 思路 第一次见到在$parent tree$上线 阅读全文
posted @ 2019-05-27 20:46 dummyummy 阅读(397) 评论(0) 推荐(0)
摘要:"原题看我" 题解 如果能把多块玻璃合并到一起多棒啊,但是直接把多块合并似乎不太可能,考虑两两合并 也就是已知上下层玻璃的透光率分别为$a_1\%$和$a_2\%$,反射率分别为$b_1\%$和$b_2\%$,求一块等效的玻璃,使得它和两块玻璃叠在一起的效果相同 (有一点要注意一下,就是 合并后的玻 阅读全文
posted @ 2019-05-25 08:44 dummyummy 阅读(193) 评论(0) 推荐(0)
摘要:易知状态不会太多($3329$个),直接搜一下,按照能不能连在后面建边,跑一遍dp即可 cpp include using namespace std; struct S { int cnt; vector s; }a[5000]; int n, m = 10, L = 32; vector G[5 阅读全文
posted @ 2019-05-24 21:29 dummyummy 阅读(191) 评论(0) 推荐(0)
摘要:思路是这样的 插头dp 打表 OEIS查表 通项公式 矩阵快速幂优化线性递推 OEIS竟然有这个东西的生成函数啊 答案为 这是最终代码 阅读全文
posted @ 2019-05-24 20:30 dummyummy 阅读(258) 评论(0) 推荐(0)
摘要:新科技:整体二分 它能解决的典型问题:带修改区间第$k$大 大概的做法是这样的:我们一次二分一个值$mid$,然后依据操作的答案与$mid$的大小关系把操作分别划到两边,然后递归下去。也就是相当于二分的是所有询问的答案 感觉其实这个跟在权值线段树上二分一个效果,只是用离线的方式替代掉了那一层权值线段 阅读全文
posted @ 2019-05-24 00:09 dummyummy 阅读(248) 评论(0) 推荐(0)
摘要:先膜一发 "Miskcoo" ,大佬的博客上多项式相关的非常全 "原题戳我" 题目大意 求 $$\sum\limits_{i=1}^{n}i^mm^i$$ 题解 设一个函数$f(i)=\sum\limits_{j=1}^{n}j^im^j$ 然后貌似用一个叫扰动法(感觉就是错位相消法)的东西,算一下 阅读全文
posted @ 2019-05-23 17:37 dummyummy 阅读(187) 评论(0) 推荐(0)
摘要:"原题链接" 题解 题目等价于求这个式子 $$ans=n2^{\frac{(n 1)(n 2)}{2}}\sum\limits_{i=0}^{n 1}\binom{n 1}{i}i^k$$ 有这么一个式子 $$i^k=\sum\limits_{j=0}^{i}\begin{Bmatrix} k\\ 阅读全文
posted @ 2019-05-19 17:11 dummyummy 阅读(235) 评论(0) 推荐(0)
摘要:"原题链接" 题目大意 $n\times n$的带权方阵,选一个权值最大的连通块 Solution 一眼连通性DP,然后就没了 转移很好想的啦,简单讨论一下就行了 有一个坑点,就是不能一个格子都不选,特判一下 注释还算详细QwQ 阅读全文
posted @ 2019-05-17 13:11 dummyummy 阅读(354) 评论(0) 推荐(1)
摘要:Gale Shapley Algorithm 此算法的流程如下: 首先搞一个队列,存储未匹配的男士编号。每次取出一个未匹配的男士的编号,让他向其未求过婚的且最喜欢的女士求婚,如果对应女士没有匹配或者已经匹配的没有这位优,那么将这位与对应的女士相匹配,并且将原来已匹配的男士扔到队列里,一直重复上述步骤 阅读全文
posted @ 2019-05-08 21:50 dummyummy 阅读(332) 评论(0) 推荐(0)
摘要:很好的一道题呀 思路 状态$d(i,j)$表示已经经过了行程单中的$i$个城市,目前在城市$j$的最小代价,直接建边跑最短路就行了 比如机票为$ACBD$,行程单为$CD$,那么对于$(0,A)$,连向$(1,C)$,$(1,B)$,$(2,D)$ 有两个需要注意的地方 1.起点为$(1,行程单的起 阅读全文
posted @ 2019-05-07 10:03 dummyummy 阅读(316) 评论(0) 推荐(0)
摘要:"题目链接" 思路 把每个点拆成$5$个点$id(x,y),id(x,y)+n,id(x,y)+2 n,id(x,y)+3 n,id(x,y)+4 n$,分别表示到这个点时的方向为上,右,下,左和静止点 非静止点的决策如下: 1.走到对应的同方向的非静止点,代价为$w$ 2.走到对应的同方向的静止点 阅读全文
posted @ 2019-05-06 17:18 dummyummy 阅读(243) 评论(0) 推荐(0)