上一页 1 2 3 4 5 6 ··· 14 下一页
摘要: 参考好文 就是说反悔贪心有两种,一种反悔堆是需要你手动去把之前的劣解换出来,一种反悔自动机是通过类似网络流反向边一样的办法让你的贪心自动实现反悔。 P2949 贪心的选取大的,如果插不进去就把时间在它前面并且价值在它后面的换出来。为了手动换需要按时间顺序选,同时维护一个小根堆。 点击查看代码 #in 阅读全文
posted @ 2022-03-30 10:54 llmmkk 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 不知道为什么之前这篇在博客园上出了一点问题 链接 P5618 题解 线段树之什么都能维护 用线段树维护最小生成树。 和[SHOI2008]堵塞的交通很像,一开始想naive了,以为只需要维护上下联通和不联通的答案,两个联通的合并加上中间小的边。 但是这样其实假掉了,一组hack是 7 1 2 5 9 阅读全文
posted @ 2022-03-24 07:56 llmmkk 阅读(54) 评论(0) 推荐(0) 编辑
摘要: 链接 P4473 题解 又见拆路径做法。 显然是要求三个单源最短路,但是边数可能是 \(n^4\) 的,难以接受。 注意到每个点向每一层连的都是区间,所以其实可以用线段树优化建图,边数变成 \(n^3\log n\),Dij 时间复杂度为 \(O(n^3\log n\log(n^3\log n))\ 阅读全文
posted @ 2022-03-23 20:23 llmmkk 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 链接 P4246 题解 线段树之什么都能维护 用线段树维护连通性。 用线段树维护一个区间的连通性,发现你其实需要维护的本质不同的信息就是这个矩形上下左右以及两条对角线的连通性。 然后考虑合并两个矩形连通性,发现因为矩形高度只有 \(2\),所以可以帮你排除一些感觉很奇怪的合并方法,具体可以看这篇的图 阅读全文
posted @ 2022-03-18 12:18 llmmkk 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 当题目中有直角坐标系并且有上下左右移动的限制时,由于 \(x\) 移动时 \(y\) 不能动,导致 \(x\) 和 \(y\) 有限制不方便我们处理,可以将坐标系逆时针旋转 \(45\) 度,再放大 \(\sqrt{2}\) 倍,具体操作就是把所有点 \((x,y)\) 的坐标变为 \((x+y,y 阅读全文
posted @ 2022-03-10 17:19 llmmkk 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 链接 CF1188D 题解 首先知道如果最后每个数都变成了 \(x\),那么答案就是 \(\min\big(\sum \operatorname{popcount}(x-a_i) \big)\)。因为减感觉比较麻烦,所以考虑最大的 \(a\) 加上的值为 \(x\),答案就是 \(\min\big( 阅读全文
posted @ 2022-03-09 17:13 llmmkk 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 链接 CF1051F 比较好玩的一道题,居然是前几天模拟T2的部分且弱化版。 我会 Dijkstra!\(O(n^2)\) 我们一眼看到这个特殊条件 \(m-n\le 20\),显然这是说这张图应该看做一棵树上挂了 \(21\) 条特殊边。 我们随便找一棵树出来,然后可以把最短路分成两类,一类不经过 阅读全文
posted @ 2022-03-08 19:20 llmmkk 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 说起来简单但是写起来还是好麻烦。。。 首先半平面交是指给出多条向量和起点,规定只取向量的左侧或右侧,求最终得到的交。 我们只需要维护交的凸包上的直线和它们的交点。 可以 \(O(n^2)\) 地暴力,但甚至 \(O(n\log n)\) 还要好写点?? 例题 把所有点逆时针排序,最后的交就是所有直线 阅读全文
posted @ 2022-03-04 16:08 llmmkk 阅读(177) 评论(0) 推荐(0) 编辑
摘要: wqs二分 wqs二分用来解决一类问题,该类问题一个突出的特征是答案具有凸性,(比如选某一类东西有贡献也有一定限制,求选 $K$ 个该类物品时的最优解)并且这类问题一般在不要求选 $K$ 个时能够较轻松地做出来。 首先要判断答案是否有凸性,我们可以发现比如最小生成树选 $K$ 条的凸性就比较显然,每 阅读全文
posted @ 2022-02-28 20:30 llmmkk 阅读(257) 评论(1) 推荐(0) 编辑
摘要: Cu 忘存代码了,看个乐就行。 T1 Sleeping in Class 给出 \(n\) 个数 \(a\),任意合并相邻两个数,问使合并到最后全部相等的合并次数最小值。 \(n\le 10^5,\sum a \le 10^6\) 因为合并到最后的数一定是 \(\sum a\) 的约数,所以枚举 \ 阅读全文
posted @ 2022-02-28 19:22 llmmkk 阅读(334) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 14 下一页