会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
WuhenGSL
N方过百万,暴力碾标算
首页
新随笔
联系
管理
1
2
下一页
[置顶]
浅谈线段树
摘要: 对于提高组,线段树的重要性不言而喻 什么是线段树? 线段树是一颗二叉搜索树。之所以叫线段树,是因为线段树上每个节点维护的是序列的一段区间。 线段树可以广泛地解决各种区间问题。相比于朴素算法$O(n^2)$的复杂度,线段树可以在$O(nlogn)$的复杂度下解决问题。 线段树的结构 线段树利用了分治的
阅读全文
posted @ 2020-08-27 15:04 Wuhen_GSL
阅读(233)
评论(0)
推荐(0)
2021年7月21日
降维技巧
摘要: 区间转化为点 前缀和与差分 通过预处理将区间操作转化为对点的操作,降低难度 其中差分思想应用较广,只要有二元性,就可以考虑差分。 如类似于加减这样的互逆的操作可用差分维护;如果一个点只有两种状态,或一个数在改变前后的奇偶性相反,都可以考虑差分。 P2882 [USACO07MAR]Face The
阅读全文
posted @ 2021-07-21 21:28 Wuhen_GSL
阅读(131)
评论(0)
推荐(0)
__builtin_函数
摘要: 二进制相关,但不知道是哪个库的 __builtin_ffs(x) 返回 x 的最后一位 1 是从后向前第几位 __builtin_clz(x) 返回 x 二进制下前导 0 的个数 __builtin_ctz(x) 返回 x 二进制下末尾 0 的个数 __builtin_popcount(x) 返回
阅读全文
posted @ 2021-07-21 21:27 Wuhen_GSL
阅读(74)
评论(0)
推荐(0)
题解 P1311 【选择客栈】
摘要: 题目只要求合法的方案数 我们不难发现,如果当前状态合法,那么右端点右面的所有状态也合法。 先用ST表保证 \(O(1)\) 算出区间最小值,方便判断当前区间是否有合法的咖啡店,再用vector记录每个色调出现的位置,然后一个色调一个色调的计算,若合法则ans加右指针之后所有的点(包括右指针),同时左
阅读全文
posted @ 2021-07-21 21:24 Wuhen_GSL
阅读(40)
评论(0)
推荐(0)
题解 P2661 【信息传递】
摘要: 由题意得,只有强连通分量之间传递才能最终得到自己的编号。 可以用$tarjan$找出强连通分量,并从中找出大于1的最小的强连通分量则是最小的游戏回合数 //AC代码 //找SCC #include<iostream> #include<cstdio> #include<algorithm> #inc
阅读全文
posted @ 2021-07-21 21:23 Wuhen_GSL
阅读(55)
评论(0)
推荐(0)
2020年11月8日
CSP-S 2020游记
摘要: 考前就有大佬说350没问题 蒟蒻瑟瑟发抖 中午到了酒店房间都没清理好,清理人员还去吃中午饭了,中午就没睡觉 进考场解压密码一致输不对,居然要加括号,非常离谱。 浏览一遍题目,感觉T3看起来十分亲切,感觉像个树蕨结构模板题,于是先做了T3 然而做着做着就感觉也没那么好调。1h后写出了模拟调用过程的暴力
阅读全文
posted @ 2020-11-08 13:28 Wuhen_GSL
阅读(94)
评论(0)
推荐(0)
2020年10月25日
题解 CF1436B 【Prime Square】
摘要: CF1436B 对于一个 \(n\) 阶方阵,我们发现: 当 $ n$ 为偶数时,对角线元素为 $1$ ,其他元素为 $0$ 时,可以保证每一行每一列的和都是 $2$,满足题意。 当 \(n\) 为奇数时,则需要在以上构造的基础上在中心元素所在的行列填一个 $1$,使得中心元素所在的行列和为 $2$
阅读全文
posted @ 2020-10-25 09:31 Wuhen_GSL
阅读(97)
评论(0)
推荐(0)
2020年10月24日
题解 CF1433B 【Yet Another Bookshelf】
摘要: CF1433B 根据题意,将所有 $1$ 移动为连续的最小操作次数为所有 $1$ 之间 $0$ 的个数 因为数据范围很小,只要分别枚举找到第一个 $1$ 和最后一个 $1$ 统计他们之间 $0$ 的个数即可 //AC代码 #include<iostream> #include<cstdio> #in
阅读全文
posted @ 2020-10-24 14:59 Wuhen_GSL
阅读(137)
评论(0)
推荐(0)
2020年10月18日
题解 CF1428A 【Box is Pull】
摘要: CF1428A 通过理解题意,我们发现: 当需要拐弯的时候,兔子需要先走回箱子的位置,再走向拐弯的方向。则拐弯操作的花费为 \(2\) 。而直行的操作花费为 \(1\) 。 所以, 如果不需要拐弯,也就是 \(x1=x2\) 或 \(y1=y2\) 时,直接计算花费。 如果需要拐弯,也就是 \(x1
阅读全文
posted @ 2020-10-18 21:02 Wuhen_GSL
阅读(95)
评论(0)
推荐(0)
2020年8月27日
浅谈树链剖分
摘要: 我们知道一颗树的dfs序可以有多种,所以可以通过一些暗箱操作把dfs序给安排了,从而能够更好的维护树上的区间信息 什么是树剖 树剖的核心是恰当的把树剖分成若干条链,链拼接起来就成了一段区间,然后利用数据结构来维护。 一些概念 重儿子:子树节点最多的儿子 轻儿子:重儿子以外的儿子 重边:父节点与重儿子
阅读全文
posted @ 2020-08-27 17:37 Wuhen_GSL
阅读(136)
评论(0)
推荐(1)
1
2
下一页
公告