随笔分类 - 构造
摘要:洛谷传送门 考虑 \(d = 2\) 的部分分。相当于只用 \(2\) 次操作把 \(T\) 变成一条链。 不妨设最后变成的是一个 \(1 \sim n\) 的链,如果不是可以把点重编号。 第一次操作考虑以 \(n\) 为根,每次取每个儿子的子树中的最大值为新的根并和原来的根连边,这样会将整棵树具有
阅读全文
摘要:洛谷传送门 AtCoder 传送门 下文令 \(m\) 为原题面的 \(k\)。 题目条件很奇怪,考虑有没有什么比较好用的策略。 发现对于任意一个三元组 \((a, b, c)\),其中 \(a, b, c\) 不全相等,那么同时添加 \((a, b, c), (b, c, a), (c, a, b
阅读全文
摘要:洛谷传送门 CF 传送门 发现对于一条链,一次操作最多能染黑这条链上的 \(2\) 个点。 所以我们把直径拎出来,设直径长度为 \(d\)。 考虑一条长度为 \(d\) 的链至少要多少次能全染黑。 若 \(d\) 为奇数,显然从直径中点 \(u\) 开始做 \((u, 0), (u, 1), \ld
阅读全文
摘要:洛谷传送门 AtCoder 传送门 讲个笑话,一年前做过,今天模拟赛出了,但是完全不记得,然后想了一种完全不同的方法,我真抽象。 首先考虑什么时候有解。显然 \(m = n + f(a)\) 的时候有解,令 \(b_i = i, c_i = a_i\) 即可。然后考虑任意交换一对 \((i, j)\
阅读全文
摘要:洛谷传送门 CF 传送门 首先显然每个点双独立,所以不同点双构造后直接合并即可。下面只考虑图点双连通的情况。 发现一个环显然有解。一个环加一条边也有解(例如 \((1, 2), (2, 3), (3, 4), (4, 1), (1, 3)\))。 发现一个环连出去一条链再连回来就无解(例如 \((1
阅读全文
摘要:洛谷传送门 LOJ 传送门 模拟赛赛时被这题题面唬住了,没想到原来这么简单/ll。 设第 \(i\) 个位置经过变化后的位置为 \(p_i\)。那么连边 \(i \to p_i\) 后所有环长的 \(\text{lcm}\) 为 \(K\)。 考虑先构造一组数 \(\{a_n\}\) 使得 \(\t
阅读全文
摘要:洛谷传送门 CF 传送门 orz Charlie/bx. 考虑对棋盘染色,那么马移动到的格子和原来的格子异色。 进而发现若两个马初始异色,那么只有白马可以吃黑马,否则只有黑马可以吃白马。 下面只讨论初始异色的情况,同色是对称的。下文令 \(W, B, T_W, T_B\) 分别为白马起点,黑马起点,
阅读全文
摘要:洛谷传送门 CF 传送门 挺妙的。 接下来我们将构造一个每条边都染色的方案,所以原来的 \(w_i\) 没用。 极差 \(\le 2\) 这个条件比较谔谔。考虑拆点,把原图变成二分图,那么 \(u, u + n\) 的极差只要都 \(\le 1\),原图就满足条件。 但是现在还不是很好做。考虑继续拆
阅读全文
摘要:洛谷传送门 CF 传送门 做了好久。怎么会是呢。 题目的操作可以看成,求出一些关键字,使得 \(B\) 矩阵的行是由 \(A\) 按照这些第 \(1\) 关键字、第 \(2\) 关键字一直到第 \(k\) 关键字,最后还有一个原来所在行下标的关键字,从小到大排序。 肯定是从排好序的 \(B\) 矩阵
阅读全文
摘要:洛谷传送门 CF 传送门 考虑构造一个新串 \(t\),只保留原串 \(s_{i - 1} = s_i\) 的字符 \(s_i\)。设 \(a_i\) 为 \(t_i\) 在原串的位置。 那么新串上我们有两种操作: \(\forall i\),删除 \(t_i\)(相当于删除原串中的 \([a_i,
阅读全文
摘要:洛谷传送门 CF 传送门 容易想到把 \(s, t\) 分成长度为 \(2\) 的段考虑。容易发现 \(00, 11\) 的个数在操作过程中不会改变,所以若两串的 \(00\) 或 \(11\) 个数不相等则无解。 考虑依次对 \(i = 2, 4, \ldots, n\) 构造 \(s[1 : i
阅读全文
摘要:洛谷传送门 CF 传送门 \(n\) 为偶数显然无解。 否则我们可以构造一棵 \(n\) 个点的完全二叉树,当 \(n + 1\) 是 \(2\) 的幂时满足 \(m = 0\),否则 \(m = 1\)。 当 \(n \ge 5\) 时可以递归至 \((n - 2, m - 1)\),再挂一个叶子
阅读全文
摘要:洛谷传送门 CF 传送门 考虑增量构造第一个集合。首先令 \(S = \{1\}\),然后不断找到下一个点 \(u\),使得它在抠掉 \(S\) 的图上不是割点,并且与 \(S\) 连通。然后令 \(S \gets S \cup \{u\}\)。 可以证明一定能找到这样的 \(u\)。 因为对于抠掉
阅读全文
摘要:洛谷传送门 CF 传送门 \(2 \nmid k\) 显然无解。 若 \(4 \mid k\),发现给一个全 \(2 \times 2\) 子矩形全部异或 \(1\) 不会对行异或和和列异或和造成影响。那么我们找到 \(\frac{k}{4}\) 个全 \(0\) 的 \(2 \times 2\)
阅读全文
摘要:洛谷传送门 NOIP 模拟赛 T1。 避免被 corner case 卡,首先暴力特判 \(n \le 7\),以及 \(m = 1\)。 令 \(t = 2^{\left\lfloor\log_2 n\right\rfloor + 1} - 1\)。 手玩一下 \(n = 20\)。转化一下我们要
阅读全文
摘要:洛谷传送门 CF 传送门 如何评价,模拟赛搬了一道,前一天晚上代码写了一半的题。 考虑如何让操作次数最小。发现直接做太困难了。根本原因是,一次操作对序列的影响太大了。考虑做一些转化,减少一次操作对序列的影响。 仍然先考虑一个排列怎么做。 不知道为什么可以想到在排列前面添加特殊字符 \(0\) 变成
阅读全文
摘要:洛谷传送门 CF 传送门 考虑若是对一个排列进行操作,怎么做。 我们维护一个排列上的值域连续段 \([l, r]\),满足 \(a_{l + 1} = a_l + 1, a_{l + 2} = a_{l + 1} + 1\),以此类推。初始 \(l = r = 1\)。 那么我们每次可以选择往外扩充
阅读全文
摘要:洛谷传送门 AtCoder 传送门 若 \(2\min\limits_{i = 1}^m a_i < \max\limits_{i = 1}^n a_i\) 就无解,因为根据排列的性质必然存在 \(yxxxy\) 或两端 \(xxyy\) 的情况,并且若这个条件不满足,就可以构造一组解。 考虑最小化
阅读全文
摘要:洛谷传送门 AtCoder 传送门 悲,赛时代码赛后被 hack 了。 发现对子段排序不会使排列的字典序变大。因此若存在长度 \(\ge k\) 的递增子段直接输出原排列。 否则答案与原排列的 \(\text{LCP}\) 至少为 \(n - k\)(可以通过对 \([n - k + 1, n]\)
阅读全文
摘要:[洛谷传送门](https://www.luogu.com.cn/problem/CF1610F "洛谷传送门") [CF 传送门](https://codeforces.com/problemset/problem/1610/F "CF 传送门") 比较有启发性的题。 首先,设 $a_u$ 为与点
阅读全文

浙公网安备 33010602011771号