摘要: 分析 放桌子有两种放法,一种是上下放,一种是左右放,分别计算最小值取 \(\min\) 即可。 注意到原题使用的是平面直角坐标系,于是将原图顺时针旋转 \(90^{\circ}\),将下标表示方式与代码中下标的表示方式统一,相应的,左下角和右上角也变成了左上角和右下角。 代码 #include <i 阅读全文
posted @ 2023-10-25 16:08 Kazdale 阅读(239) 评论(0) 推荐(0)
摘要: 分析 首先对于小于 \(6\) 的数答案一定是 \(15\)。 然后发现 \(6、8、10\) 分别是 \(3、4、5\) 的二倍,而且对于三种做法做一块披萨所用的时间都是一样的,所以只要一个数能被这三个数凑出来,最后的总用时就是这个数乘以做一块披萨所用的时间。 \(3、4、5\) 作为 \(3、3 阅读全文
posted @ 2023-10-25 15:32 Kazdale 阅读(230) 评论(0) 推荐(0)
摘要: 分析 看到求最大值最小,不难想到二分。 很容易想到二分最大可取边长度。 思考如何check。 首先如果存在一点 \(u\) 符合条件,那么我们很难判断那条边该翻哪条边不该翻,很难去check。 那么大胆假设对于每个点 \(u\),每条边的方向只会确定为一个状态。 尝试证明。 假设存在边 \(a, b 阅读全文
posted @ 2023-10-25 14:55 Kazdale 阅读(213) 评论(0) 推荐(0)
摘要: 分析 首先看到那个 \(10^{100}\) 再加上样例,我们就能意识到在不是特别多的操作次数后这颗树上的值就会全变成 \(0\)。 因为没有子节点在一次操作后显然就会变成 \(0\),然后第一次叶节点就会变成 \(0\),然后下一次子节点中只有叶节点的就会变成 \(0\),以此类推,理论上最多操作 阅读全文
posted @ 2023-10-25 09:47 Kazdale 阅读(221) 评论(0) 推荐(0)
摘要: 分析 看到题面里面的子序列觉得很恶心,如果是子段感觉就会比较好做。 如果直接填上子序列中间的空隙就可能会取一些比必须要取的数更大或者更小的数,影响我们的答案。 那么就可以直接排序,使得子序列中间的空隙的数必然 \(\geq\) 左端且 \(\leq\) 右端,不会影响我们的答案(因为极差只看最大最小 阅读全文
posted @ 2023-10-24 19:08 Kazdale 阅读(534) 评论(0) 推荐(0)
摘要: 分析 首先计算单个排列中的逆序对数量。 我们发现这东西可以分为两类,一类是两个数在原排列和倒着的排列(这里称为“反排列”),另一类是两个数一个在原排列,一个在反排列的。 对于第一类,我们发现,原排列中的顺序对是反排列中的逆序对,所以原排列的所有数对要么在原排列中是逆序对,要么在反排列中是逆序对,所以 阅读全文
posted @ 2023-10-24 15:50 Kazdale 阅读(233) 评论(0) 推荐(0)
摘要: 分析 发现操作2不会改变数的奇偶性,故无视。 那么操作就是单纯删一个数。 对于一个连续出现 \(x\) 个奇偶性相同的数的子段,需要删 \(x - 1\) 个数(因为只剩下一个数就不会和相邻的数奇偶性相同了)。 觉得找序列太麻烦,观察到连续出现 \(x\) 个奇偶性相同的数的子段有 \(x - 1\ 阅读全文
posted @ 2023-10-24 15:25 Kazdale 阅读(243) 评论(0) 推荐(0)
摘要: 发现博客东西太多了,整合一下。 游记 第一场模拟赛游记 NOI春季测试游记 HL第一次集训游记(一部分) LNOI2023游记 HL第二次集训游记 CSP-S 2023 R1游记 CSP-S 2023 R2游记 题解 CF1839A CF1839B CF1839C CF1839D CF1839E 算 阅读全文
posted @ 2023-10-24 14:28 Kazdale 阅读(84) 评论(0) 推荐(0)
摘要: 分析 第一眼:博弈论。 第二眼:呃……贪心? 实际:DP。 首先想这个游戏大抵存在必胜策略,否则不会让我们求。 思考先手必胜条件,就是如何让这个数组最后只剩下一个数。 设数列之和为\(sum\)。 发现每次操作给两个数减的数字是一样的。那么对于每次操作,\(\Delta sum\)都为两者之间更少的 阅读全文
posted @ 2023-10-23 17:38 Kazdale 阅读(219) 评论(0) 推荐(0)
摘要: 分析 啊这道题就做得很难受了…… 手玩一下样例,不难发现答案就是分出\(k\)段不是单调上升序列的序列,求这些序列的最小长度和。 显然有状态\(f_{l,r,k}\)表示\([l,r]\)序列分成\(k\)段的最小长度和。 转移很好想,即枚举\(x\),\(y\)分别表示左区间的右端点以及段数,空间 阅读全文
posted @ 2023-10-23 14:53 Kazdale 阅读(274) 评论(0) 推荐(0)