把博客园图标替换成自己的图标
把博客园图标替换成自己的图标end

06 2022 档案

摘要:题面传送门 树能套,dp居然也能套/jk 首先我们先来思考LCS一般是怎么做的。 显然是设fi,j为第一个串匹配到i,第二个匹配到j,答案为多少。 我们考虑直接将这个东西压到状态里面。 具体的,设gi,S表示不定串匹配到第i个时,dpi的状态是S,转移是 阅读全文
posted @ 2022-06-30 15:04 275307894a 阅读(33) 评论(0) 推荐(0) 编辑
摘要:题面传送门 KDT还可以做领域查询!~~只不过复杂度可以卡到单次O(n)~~ 我们开一个小根堆维护答案,之后将每次答案与堆顶比较。如果答案比堆顶小就加入答案。 我们建立一颗KDT,然后每次计算每个点和当前矩形四个边框中最大的距离,如果这个距离大于当前堆顶,那么直接返回。否则继续递归下去。 但是这 阅读全文
posted @ 2022-06-30 08:26 275307894a 阅读(17) 评论(0) 推荐(0) 编辑
摘要:题面传送门 这里有一只不会KDT的大sb。 建树 如果只有一个点,肯定是直接这个点就行。 否则选取一个维度,并选取这个维度上的一个点,将剩下的点按照这个维度的坐标分成左右两个部分。这样我们实现了将一个超长方体分成两个超长方体的结构,这样可以递归建树。 但是这样的问题在于可能是O(n2)的就非常 阅读全文
posted @ 2022-06-29 20:46 275307894a 阅读(17) 评论(0) 推荐(0) 编辑
摘要:题面传送门 首先这个nm非常小,于是我们可以考虑状压。 因为这个最低点肯定不能八连通,所以最多只有8个这种最低点。 如果不考虑.的格子不能为X的情况,容易状压:设dpi,S表示已经放了前i个数,钦定为最低点的集合为S,数一下还有哪些地方能放即可。时间复杂度大概是$O(nm2 阅读全文
posted @ 2022-06-29 16:10 275307894a 阅读(25) 评论(0) 推荐(0) 编辑
摘要:题面传送门 首先你先不要管中间距离大于两个人之间最大值的情况,先假设其全部为等于最大值。设这个和为j,则这个方案的方案数为CLj+nn。 因为di不大,所以我们可以将所有nd种距离的方案数算出来之后计算答案即可。 关于两个点的最大值容易想到按照权值大小排序,然后一个一 阅读全文
posted @ 2022-06-28 19:22 275307894a 阅读(31) 评论(0) 推荐(0) 编辑
摘要:题面传送门 首先转化一下题面:一条链可以免费选一次,其余选k次,选到的最大价值。 因为价值总是>0,因此肯定是选到叶子最优。 然后我们发现这条链上还剩了一些点,这些点看上去可以排序以后贪心,但是O(nk)再多个log就非常劲爆。 有一种奇技淫巧就是将这些点拆成一个1a1,然后 阅读全文
posted @ 2022-06-28 18:10 275307894a 阅读(37) 评论(0) 推荐(0) 编辑
摘要:题面传送门 dp?直接算贡献! 我们首先来考虑如果n=2N,m=2M,NM怎么做。 则显然,ixorj会在每个k[0,m1] 之间都取到n次。 那对于一般的nm怎么做呢? 直接拆成$\log n\times \log 阅读全文
posted @ 2022-06-28 13:37 275307894a 阅读(37) 评论(0) 推荐(0) 编辑
摘要:题面传送门 非常奇妙的dp。 首先我们发现这个东西相当于是最大子段和和最小子段和的绝对值取max。 考虑最大子段和的一种求法:维护前缀的前缀最小值,然后用当前的前缀与其相减得到答案。 而最小子段和也有一种求法:维护前缀的后缀最小值,然后用当前的前缀与其相减得到答案。 因此这个东西的值相当于最大前缀和 阅读全文
posted @ 2022-06-27 21:44 275307894a 阅读(35) 评论(0) 推荐(1) 编辑
摘要:题面传送门 非常码农的二合一题。 首先第一问看上去非常simple。因为只能往左,往右,和往上走(包括左上,上,右上),往上走显然是没有后效性的。而往左和往右因为每一层最多1000个,所以直接枚举从上一层跑过来的地方转移即可,时间复杂度O(1000n) 然后第二问只要按照我们dp的过程输出即可。 阅读全文
posted @ 2022-06-27 20:28 275307894a 阅读(51) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2022-06-27 16:18 275307894a 阅读(2) 评论(0) 推荐(0) 编辑
摘要:题面传送门 非常离谱,比赛的时候睡着了!然后错失大好上分机会。 考虑如果我们钦定一个点为根,那么每个点会被分到一个组中,这个点到根的距离和其它点都相同。 如果我们知道了一个点和根是相邻的,那么我们将根换到这个点上来,原来的根对应的组都是和当前的根相邻的,继续换下去就可以构造出整颗树。 但是这棵树不一 阅读全文
posted @ 2022-06-26 22:43 275307894a 阅读(63) 评论(0) 推荐(0) 编辑
摘要:题面传送门 感觉写起来真吃屎一样的,变量名多的离谱。 首先这个是一个连通性问题那就先缩点。 然后考虑题目中的性质有啥用,也就是说一个点如果有两个入度,那么断掉其中一个对于答案没有影响。那么我们就得到一棵外向树。 问题来了,断掉哪一个。 考虑缩点的时候scc代表反向拓扑序,我们需要正向拓扑序最晚的保留 阅读全文
posted @ 2022-06-25 21:38 275307894a 阅读(48) 评论(0) 推荐(0) 编辑
摘要:题面传送门 首先如果整个排列是一个环的话那么答案就是0,由此我们得到了一个在环内构造的方法。 但是如果在环之间切换的话代价至少为1,设环的个数为p,则答案至少为2p2 转化一下题目,相当于给每个pi分配一个si,满足s整个序列构成一个环。 初始我们先给每个pi 阅读全文
posted @ 2022-06-25 10:45 275307894a 阅读(75) 评论(0) 推荐(0) 编辑
摘要:题面传送门 显然根据nim游戏,要求的是一个类似于xorail[lair] 容易想到想美味那道题一样按位处理平移问题,如果这样你就成功被带偏了 考虑倍增,实际上倍增有一个很美妙的性质就是倍增每次增加的2i是绝对大于这个增加的区间中 阅读全文
posted @ 2022-06-16 21:52 275307894a 阅读(19) 评论(0) 推荐(0) 编辑
摘要:题面传送门 这东西感觉一脸看上去不可做好吧,步数啥的肯定差分一下比较好算。 差分后求出至少要走k步的区域大小是多少,容易发现这个是一个k维的长方体(好像不能这么说?)然后一步一步模拟就可以做到O(nkw)的复杂度。然后和暴力同分 这个循环肯定不是白给的,看上去有一定的规律,因此第一次循环 阅读全文
posted @ 2022-06-15 22:46 275307894a 阅读(39) 评论(0) 推荐(0) 编辑
摘要:题面传送门 自闭题。 首先显然先想到将括号序列换成1与-1的序列,要求前缀和非负。 然后有一个结论:操作次数不超过2 考虑前缀和最大的点x,两次操作分别操作[1,x]\(\)[x+1,2n],显然可以用反证法证明两个前缀和单调,否则这个就不是最大点。 然后不用操作的判掉很简单,关键是一次操 阅读全文
posted @ 2022-06-14 22:13 275307894a 阅读(36) 评论(0) 推荐(0) 编辑
摘要:题面传送门 首先大概有一个人口普查的40分做法: 考虑对每一种颜色单独做,主要就是将每根柱子上的球都拿到最上面。 先数出这根柱子上有多少个我们现在要拿的球,然后从另外一个柱子上拿出等量的球放在空柱子上,之后我们从当前柱子一个一个往外拿球,如果这个球是我们当前颜色的就放到我们之前拿出等量的球的柱子上, 阅读全文
posted @ 2022-06-13 22:17 275307894a 阅读(74) 评论(0) 推荐(0) 编辑
摘要:题面传送门 怎么比ZJOI想的时间还长/fn/fn 但是感觉现有的题解为啥都要根号分治啊,这个东西本身的复杂度很优美啊。 首先有一个单次O(lenx+leny)的暴力但是不太妙。 考虑如果有一个颜色只有一个数另一个有很多个数,那么除了一个数左右各一个另一种颜色其它都是没有用的。 这启发我们猜 阅读全文
posted @ 2022-06-12 20:11 275307894a 阅读(48) 评论(0) 推荐(0) 编辑
摘要:题面传送门 首先发现这个东西又可以走又可以不走很难受,所以考虑推一点性质。 我们不妨将整个过程倒过来,改成从终点向起点走。 容易发现我们至少要绕一圈,但是绕了一圈之后再走的路就没有意义了因为之后一定要再走一遍,所以可以看做在起点等了一段时间一直走到终点。 断环为链之后不难发现我们要求的东西长这个样子 阅读全文
posted @ 2022-06-06 22:45 275307894a 阅读(28) 评论(0) 推荐(0) 编辑
摘要:题面传送门 这个题感觉看上去很呆呆地亚子。 首先来考虑k90的部分分,显然直接放一个长度为k的下降子序列就好了。 这个信息用的太逊了,发现n12080分感觉就是用2位数表示一个二进制位,发现可以从高位到低位做,每次放一个最大的数会让答案乘2,放一个最小的数会 阅读全文
posted @ 2022-06-04 19:56 275307894a 阅读(43) 评论(0) 推荐(0) 编辑

浏览器标题切换
浏览器标题切换end
点击右上角即可分享
微信分享提示