摘要: 很不错的一道题! 考虑到这个棋子动非常不好刻画,不如思考空格的移动。 注意到,空格相当于是可以移动两个,并且空格之间不能互相越过。 考虑先把所有空格移到最左边,设此时最右边的空格在 \(h\),然后在一种方案中,如果位置 \(i\) 上需要有棋子,并且当前 \(i\) 上有空格,那么我们只需要让所有 阅读全文
posted @ 2026-10-02 14:25 ssy666666 阅读(0) 评论(0) 推荐(0)
摘要: 非常优秀的一道题! 一个比较自然的想法就是贪心,设对于第 \(i\) 个物品用了 \(ans_i\) 个优惠卷。设此时在位置 \(i\) 选完后一共剩下 \(s_i\) 张优惠卷。那么在位置 \(i\) 选会有三种情况: 情况一,\(ans_i \in [0,a_i \mod c]\),此时会使所有 阅读全文
posted @ 2026-10-02 08:53 ssy666666 阅读(5) 评论(0) 推荐(1)
摘要: 平衡树有交合并板子题。我代码写得太史,卡了半天常才过。 考虑这个操作的实质,相当于是遍历到一个点 \(i\),当前有一些询问,对于 \(x \le 0\),让 \(x\) 增加 \(a_i\),对于 \(x > 0\),让 \(x\) 减少 \(a_i\)。 区间询问其实是好做的,我们考虑维护一颗平 阅读全文
posted @ 2026-09-25 11:38 ssy666666 阅读(7) 评论(0) 推荐(0)
摘要: 虽然是偏结论的一道题,但是感觉质量还是挺高的。 首先一个结论就是,对于一个给定的树,对应的拓扑序有: \[\frac{n!}{\prod sz_u} \]简单证明一下,在任何一个节点 \(u\) 和它的子树中,\(u\) 在拓扑序中一定在它的任一儿子之后,而在所有的方案中,满足该点的只有 \(\fr 阅读全文
posted @ 2026-09-22 21:05 ssy666666 阅读(2) 评论(0) 推荐(0)
摘要: 场切了,感觉这题就是纯对脑电波。 \(T=0\) 此时必然有最小时间等于 \(2(n-1)\),也就是说每条边最多经过两次,证明显然。 也就是说,你需要找一个深搜的先后顺序,使得题目给的那个式子最小。 考虑一个树形 dp,定义 \(f_u\) 表示从 \(u\) 出发,遍历完 \(u\) 的子树再回 阅读全文
posted @ 2026-09-20 21:58 ssy666666 阅读(4) 评论(0) 推荐(0)
摘要: 一种比较奇特,虽然复杂度会劣于标算的做法。先给出算法的复杂度,设值域为 \(V\),复杂度就是 \(O(T \log^2 Vn)\),跑下来大概 \(1.1\) 秒。 设 \(lowbit(x)\) 表示 \(x\) 最低位的 \(1\) 对应的数值。 首先一个非常简单的发现,就是其实 \([l,r 阅读全文
posted @ 2026-09-20 21:37 ssy666666 阅读(5) 评论(0) 推荐(0)
摘要: 我的天哪喵喵题,依旧被创飞。 先观察一下这个序列有什么性质: 首先,如果我们的序列形如 \(x,y,z\),其中存在边 \((x,y)\),如果有任意的边 \((z,p)\),那我们可以通过操作: \[x,y,z \rightarrow z,p,z \rightarrow z,x,y \]来让 \( 阅读全文
posted @ 2026-09-15 19:03 ssy666666 阅读(7) 评论(0) 推荐(0)
摘要: 喵喵题啊。 首先这个显然 dp 对吧,然后考虑一行一行往上加。 如果只有一行显然是简单的,然后考虑只有两行时怎么办。 设 \(sum_{i,j} = \sum_{k=1}^j a_{i,k}\)。 设转折点为 \(i\),那么答案为 \(sum_{1,i} + sum_{2,n} - sum_{2, 阅读全文
posted @ 2026-09-08 21:42 ssy666666 阅读(7) 评论(0) 推荐(0)