上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 29 下一页
摘要: 01分数规划复习。 这东西有一个名字叫做最优比率环。 首先这个答案具有单调性,我们考虑如何检验。 设$\frac{\sum_{i = 1}^{n}F_i}{\sum_{i = 1}^{n}T_i} = e$,我们需要检验的就是$\sum_{i = 1}^{n}(F_i - mid * T_i) \g 阅读全文
posted @ 2018-10-29 18:55 CzxingcHen 阅读(177) 评论(0) 推荐(0) 编辑
摘要: BZOJ 4777 被权限了。 这道题的做法看上去不难,但是感觉自己yy不出来。 首先是两个结论: 1、答案一定是连接着两个异色点的一条边。 2、答案一定在最小生成树上。 感觉看到了之后都比较显然,自己想……算了吧……想不出来的…… 那么我们可以对每一个点开一个以颜色为下标的线段树,对这棵树存一存它 阅读全文
posted @ 2018-10-29 15:31 CzxingcHen 阅读(290) 评论(0) 推荐(0) 编辑
摘要: POI的题时限都好紧…… 学习了一波整体二分。 王北大的博客。 首先对于每一个询问我们可以分别二分求解,那么我们可以对所有的询问一起二分,在二分的时候可以减少答案的规模,因为每一次询问都可以划分到不同的答案区间中,当最后二分到$l == r$的时候就得到了答案。 对于这道题我们可以先找到一个$mid 阅读全文
posted @ 2018-10-29 09:35 CzxingcHen 阅读(127) 评论(0) 推荐(0) 编辑
摘要: BZOJ 2001 很神仙的cdq分治 先放论文的链接 顾昱洲_浅谈一类分治算法 我们考虑分治询问,用$solve(l, r)$表示询问编号在$[l, r]$时的情况,那么当$l == r$的时候,直接把询问代入跑一个最小生成树就好了。 然而问题是怎么缩小每一层分治的规模,因为每一层都用$n$个点$ 阅读全文
posted @ 2018-10-28 18:29 CzxingcHen 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 发现从顶点入手不太方便,我们从这个“公共部分最长”开始考虑问题,因为要求这一条公共部分的链最长,可以联想到树的直径,那么本题就是要求一条类似于直径的东西使两个端点除了直径这一条链之外还有不少于两个的儿子,我们只要把这两个儿子交叉输出一下就得到了本题的答案。只要两次$dfs$就可以分别求出这一条链的两 阅读全文
posted @ 2018-10-28 09:55 CzxingcHen 阅读(416) 评论(1) 推荐(1) 编辑
摘要: BZOJ 2815。 解法还是挺巧妙的。 放上写得很详细很好懂的题解链接 戳这里。 一个物种$x$如果要灭绝,那么沿着它的入边反向走走走,一定可以走到一个点$y$,如果这个点$y$的物种灭绝了,那么$x$也一定会灭绝。而且,因为一次只能灭绝一个物种,只有满足这个条件这个物种$x$才会灭绝。 那么我们 阅读全文
posted @ 2018-10-27 19:50 CzxingcHen 阅读(137) 评论(0) 推荐(0) 编辑
摘要: BZOJ 4004 把所有不能相互表示出来的向量都买下,一定能得到最大能买的方案数。 求解线性无关向量可以高斯消元,最后没有变成$0$向量的就是基底。 本题还要求代价最小怎么办?我们只要先把所有向量按照代价从小到大排个序然后贪心地选取可行解去消元就可以了。 时间复杂度$O(n^3)$。 要注意精度。 阅读全文
posted @ 2018-10-27 12:08 CzxingcHen 阅读(136) 评论(0) 推荐(0) 编辑
摘要: BZOJ 4003 需要实现一个可并堆。 每个点维护一个小根堆,然后一开始把所有骑士加入到它所在的点的小根堆当中,实际上空间是$O(m)$的,然后我们从上到下不断合并这个小根堆,合并完之后如果遇到堆顶小于当前城市的防御值就弹掉堆顶顺便记录答案。 对于那些攻占掉城池对骑士的贡献的处理,可以采用打标记的 阅读全文
posted @ 2018-10-26 21:02 CzxingcHen 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 斯坦纳树复习,我暑假的时候好像写过[JLOI2015]管道连接来着。 设$f_{i, s}$表示以$i$为根,$k$个重要点的连通状态为$s$,($0$代表没有连进最小生成树里面去,$1$代表连进了最小生成树里面去)的最小代价,那么可以写出两种转移。 1、$f_{i, s} = min(f_{i, 阅读全文
posted @ 2018-10-26 19:10 CzxingcHen 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 感觉应当挺简单的,但是弄了好久……菜死了 如果不考虑那些为$1$的点,直接跑个最短路计数就好了,但是我们现在有一些边可以不用付出代价,那么只要在连边的时候先预处理搜一下就好了。 原来的想法是拆点,但是这样子不好连边,所以直接把点权转化到边权上来。 注意到起点其实不用付出代价,那么最后的答案就是$di 阅读全文
posted @ 2018-10-26 15:53 CzxingcHen 阅读(198) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 29 下一页