
luogu
Ansicht
无聊是人类进步的阶梯。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
题解:luogu P5568 [SDOI2008]校门外的区间
题解:luogu P5568 [SDOI2008]校门外的区间 luogu P5568 [SDOI2008]校门外的区间 前置知识:珂朵莉树 问题一:开闭区间 区间端点均为整数,不妨认为(lll,rrr)为(l+0.5l+0.5l+0.5,r−0.5r-0.5r−0.5) 乘2就可以换算成整数区间 问题二:数据结构 假定数据随机,出题者确实没有卡 ,那么区间的个数不会很多,好像链表模拟也可以...原创 2019-10-13 17:59:33 · 335 阅读 · 0 评论 -
题解·连续攻击游戏
@luogu 看上去这是一道二分图题,将点i和它的两个属性值分别作为两个点集,分别连边后跑匈牙利树,若找不到匹配则输出解。 #include<cstdio> #include<cstring> #include<vector> using namespace std; vector<int> e[2000010];原创 2018-10-21 21:25:41 · 329 阅读 · 0 评论 -
题解 引水入城
@luogu @LOJ 从上向下记忆化搜索,保存每个点能覆盖的最底层的区间。如果一个点能到达的区间不连续,那么一定没有方案。然后做一个基础贪心:从n个区间中选出尽量少的区间,覆盖1-n #include<cstdio> #include<cstring> #include<algorithm&gt原创 2018-09-09 17:42:16 · 450 阅读 · 0 评论 -
题解 Mayan游戏
@luogu 搜索剪枝题,每一次暴力下落,暴力消除 #include<cstdio> #include<cstring> #include<algorithm> #define N 10 #define ll long long #define max(x,y) ((x)>(y) ? (x) : (y)) #define min...原创 2018-09-02 17:37:01 · 241 阅读 · 0 评论 -
题解 教主的魔法(分块学习记录)
@luogu 看到询问个数少,分块的复杂度能过,于是人生第一次打了分块,居然A了。据说也有线段树瞎搞的,不过我不会写。 总之,边角暴力,块内二分,受影响的块直接重新排序。一切都是那么暴力。 #include&lt;cstdio&gt; #include&lt;cstring&gt; #include&lt;algorithm&gt; #include&lt;cmath&a原创 2018-09-07 19:46:29 · 327 阅读 · 3 评论 -
题解 luogu P2484 【[SDOI2011]打地鼠】BZOJ2241 O(N^2.5)
这道题最好可以做到n2.5n2.5n^{2.5},但由于数据弱可以让一些错误的n2n2n^2算法AC 将行和列分开考虑。 枚举每个点时用前缀和记录要减去的数(见注释) 枚举行数(列数)时使用每一行(列)的和的gcd的约数。 #include&lt;cstdio&gt; #include&lt;cstring&gt; #include&lt;algorithm&gt; #include&原创 2018-08-01 14:15:30 · 268 阅读 · 0 评论 -
luogu P2104 二进制
@luogu 题目描述 小Z最近学会了二进制数,他觉得太小的二进制数太没意思,于是他想对一个巨大二进制数做以下 4 种基础运算: 运算 1:将整个二进制数加 1 运算 2:将整个二进制数减 1 运算 3:将整个二进制数乘 2 运算 4:将整个二进制数整除 2 小Z很想知道运算后的结果,他只好向你求助。 (Ps:为了简化问题,数据保证+,-操作不会导致最高位的进位与退位) ...原创 2018-08-09 14:57:10 · 453 阅读 · 0 评论 -
[SCOI2009]windy数 题解
题目链接 数位dp入门题,dfs(len,ps,lead,up)表示当前枚举到第len位,前一位数为ps,是否有前导0,是否达到上界。 数位dp这一篇讲得很好orz #include<cstdio> #include<cstring> #include<iostream> #define max(x,y) ((x)>(y) ? (x) : (y)) ...原创 2018-07-13 18:04:33 · 250 阅读 · 0 评论 -
左偏树学习记录
左偏树学习记录 左偏树有一些和时间复杂度证明有关的性质,但我们只要会用就好了 节点的距离:该节点到离它最近的叶节点的距离 节点的左子节点的距离总是大于右子节点的距离 显然节点的距离等于它右子节点的距离加1 合并(merge) int merge(int x,int y) { //返回合并后的树的位置 i...原创 2018-07-17 10:19:36 · 236 阅读 · 0 评论 -
题解 luogu P1879 【[USACO06NOV]玉米田Corn Fields】
轮廓线dp 记录当前的轮廓线,根据当前轮廓线进行状态转移,理论时间复杂度比普通状压dp快。 k3 k1 k2 * * 如图,假设当前转移到位置,轮廓线状态为二进制数k1k2k3k4,1表示第i列已选,0表示第i列未选,转移时用位运算解压出k3与k2,作出决策,并维护每一列的轮廓线即可 代码如下 #inclu...原创 2018-05-29 20:29:23 · 287 阅读 · 0 评论