思维构造
文章平均质量分 83
遇到的好题
AC2656
郑州轻工业大学2022级
2656512631@qq.com
展开
-
【思维构造】Neutral Tonality—CF1894D
中最多只会有一个元素对其做出了贡献(假设有两个做出了贡献,那么这两个构成降序序列,破坏了整体的升序性质)。如果有多个答案,可以输出其中任意一个。,表示测试用例的数量。接下来是测试用例的描述。每个测试包含多个测试用例。数组降序的想法很相似?中的任意位置,任意顺序。的贡献最小,我们很容易想到插入的。每个测试用例的第一行包含两个整数。的最长递增子序列的长度。个数字,即插入后获得的最终数组。中的每一组内部都成降序分布。数组中各个元素的大小应该是。每个测试用例的第二行包含。每个测试用例的第三行包含。原创 2023-11-08 19:39:52 · 208 阅读 · 0 评论 -
【思维构造】Anonymous Informant—CF1894C
对于每个测试用例,如果匿名消息来源的话可以为真,则输出 “Yes”,如果它们必定为假,则输出 “No”。在操作后一定变成了最后一个元素,所以我们可以维护操作过程中的最后一个元素在。是操作后得到的数组,所以我们可以倒着模拟这个操作过程。你想要检查匿名消息来源的话是否为真,或者它们必定是假的。数组得到(因为不满足固定点的定义,不能进行操作),输出。模拟的过程是重点,需要看着代码自己理解。) — 测试用例的数量。接下来是测试用例的描述。在第三个测试用例中,可以证明没有解决方案。在第一次操作中,选择了一个固定点。原创 2023-11-08 14:21:19 · 395 阅读 · 5 评论 -
【位运算】XOR Construction—CF1895D
这里使用了贪心的思路来实现(局部最优得到整体最优,二进制每一位最优得到二级制所有位最优)。如果存在多个满足条件的数组,可以输出其中任意一个。为了达到这一目的,我们只能修改。exactly once,而我们已经知道了。因为 every integer from。输入的附加限制条件:始终可以从给定序列。的所有前缀异或和各不相同,且不存在。中元素互不相同,现在的任务就是保证。位上的“1”的数量最小,进而使得。构造出至少一个有效的数组。题目要求构造一个长度为。因为题目保证有解,所以。原创 2023-11-04 21:44:58 · 276 阅读 · 0 评论 -
【思维构造】Game with Chips—CF1327C
易知这种方法满足题目要求“each chip visits the position that Petya selected for it at least once”。的所有数值大小得出),即所有输入情况都可以使用这种方法,不用考虑操作次数超出要求。然后呈 S 型从左上(初始位置)移动,直到遍历完所有的。这种方法需要的操作次数。原创 2023-11-03 21:48:13 · 160 阅读 · 0 评论 -
【思维构造】Cow and Message—CF1307C
弄明白了题意,我们现在只需要知道点就能做出来这道题了:满足条件的子串的长度一定是。一开始没看清题,以为要求的是所有下标呈等差数列的子串的总数,一直不知道怎么做。为了方便,下边称“下标呈等差数列的子串”为“满足条件的子串”。的子序列出现的次数,这一点很好理解。的满足条件的子串出现的次数一定。是一个满足条件的子串,其中。也就是说,任何一个满长度大于。后来看了题解才发现要求的是“这个子串的任意一个长度为。原创 2023-11-01 15:12:57 · 68 阅读 · 0 评论 -
【思维构造】Binary String To Subsequences—CF1399D
的子序列生成的字符串)中。这一点无疑很简单,只要某一个字符串结尾字符与。接到这个字符串的后边。如果所有字符串的结尾字符都与。结尾的字符串的编号。这里为了方便,使用动态数组。的时候,需要计算可以放入哪个字符串中(已经由。只记录所有字符串的末尾字符和这个字符串的编号。两种,所以我们使用两个数组,分别存储以。相同,那么只要再新开一个字符串,怎么用代码实现上边的过程呢?结尾的字符串的编号和以。原创 2023-10-16 21:17:16 · 82 阅读 · 0 评论 -
【思维构造】Vampiric Powers, anyone?—CF1847C
这个思路完美利用了ai很小的这个特点,通过异或前缀和完美地将循环数组的长度变为循环元素的范围,极快地提升了代码的效率。原创 2023-10-15 11:30:59 · 118 阅读 · 0 评论 -
【思维构造】Sequence Master—CF1806C
很容易想到全由 $0$ 组成的数组 $q$ 一定是满足条件的。当 $n=1$ 时,我们还可以构造数组 $\{x, x\}$,也是满足条件的。当 $n=2$ 时,我们通过样例解释发现 $\{2, 2, 2, 2\}$ 满足条件。但通过样例输出发现这对于第三个样例并不是最优的,于是我们暴力输出 $n=2$ 的所有可行数组:$\{-1, -1, -1, 2\}$、$\{0, 0, 0, 0\}$、$\{2, 2, 2, 2\}$,发现了新的可行数组:$\{-1, -1, -1, 2\}$,原创 2023-10-14 21:08:35 · 148 阅读 · 0 评论 -
【思维构造】Element Extermination—CF1375C
无论什么时候都一定满足。,所以最后剩下初始时的。,任意删除其中一个即可。中的元素的时候,易知。数组不可能剩一个元素。原创 2023-10-12 19:02:47 · 156 阅读 · 0 评论 -
【思维构造】Find The Array—CF1463B
我太菜了,这么简单的思路都没有想到。中的所有下标为奇数的元素全部换成。中的所有下标为偶数的元素全部换成。数组中下标为奇数的所有元素的和。和下标为偶数的所有元素的和。原创 2023-10-12 13:25:54 · 56 阅读 · 0 评论 -
【思维构造】Dominant Character—CF1605C
【代码】【思维构造】Dominant Character—CF1605C。原创 2023-10-11 16:26:00 · 67 阅读 · 0 评论 -
【数学】Joyboard—CF1877C
中选取的,为了求出答案,我们再对。原创 2023-10-09 08:51:45 · 84 阅读 · 0 评论 -
【思维构造】Circle of Monsters—CF1334C
【思维构造】Circle of Monsters—CF1334C。原创 2023-10-07 16:15:31 · 88 阅读 · 0 评论 -
【图论】Linova and Kingdom—CF1336A
我们先把所有城市认定为工业城市,然后在与工业城市直接相连的旅游城市中选出“将其变为工业城市提供的贡献值”最大的城市,并将其变为工业城市。请认真考虑我们是如何计算计算一个边界处的旅游城市如果变为工业城市后可以提供的贡献的:当前点的子树的节点数 - (当前点的深度 - 1)。点)的子树上所有点都是工业城市,并且与根节点路径上的所有点都是旅游城市。那么如果后边的操作把。城市的贡献的计算方法:当前点的子树的节点数 - (当前点的深度 - 1)。是旅游城市,那么它到根节点的路径上的所有城市都是旅游城市。原创 2023-10-05 21:57:05 · 655 阅读 · 0 评论 -
【思维构造】Minimum Ties—CF1487C
【代码】【思维构造】Minimum Ties—CF1487C。原创 2023-10-02 00:37:18 · 32 阅读 · 0 评论 -
【思维构造】Reverse Madness—CF1878D
每个区间内需要反转的部分的中心也是区间的中心。原创 2023-09-27 17:08:16 · 917 阅读 · 0 评论 -
【图论】Mad City—CF1873H
【代码】【图论】Mad City—CF1873H。原创 2023-09-26 20:15:18 · 68 阅读 · 0 评论 -
【思维构造】Make it Alternating—CF1879C
【代码】【思维构造】Make it Alternating—CF1879C。原创 2023-09-25 11:18:38 · 380 阅读 · 6 评论 -
【思维构造】ABBC or BACB—CF1873G
div4的G题,对我来说还是有难度的。方法很好,思维题。但我看了题解才想到。原创 2023-09-23 23:11:54 · 155 阅读 · 0 评论 -
【位运算】Strange Test—CF1632C
我一开始本以为我已经理解了,但当我写这篇博客的时候发现我的理解其实是错误的,直到我写到这里才真正地理解。如果我们使用了取或操作。在此之前,我们使用了第一个和第二个操作若干次,令结果值。下面大部分是cf官方题解的原话,因为我认为cf这个题的题解写得确实很好。,所以在使用取或操作之后,我们只能使用第二个操作(自增。设为零,并从高到低迭代位数。为了实现这个目标,我们可以递增地枚举。如果我们不使用取或操作,答案就是。取或操作最多只能用一次,因为。在这种情况下,答案将是。原创 2023-09-18 21:01:17 · 29 阅读 · 0 评论 -
【思维】Stack of Presents—CF1279C
【代码】【思维】Stack of Presents—CF1279C。原创 2023-09-16 10:18:18 · 38 阅读 · 0 评论 -
【思维构造】Azamon Web Services—CF1281B
如果他能给产品重新取名,比他竞争对手的名称更小字典序,那么他将能够位居搜索结果的顶部,并成为百万富翁。如果你的朋友能够将产品重命名为比竞争对手的名称更小的字符串,那么他将位居搜索排名榜首!在第一个测试用例中,可以交换字符串的第二个和第四个字母,得到的字符串 “AMAZON” 的字典序比 “APPLE” 小。为了让你们的策略不那么容易被竞争对手发现,你决定最多只交换两个字母的顺序。的字典序最小即可(最多交换一对字符的情况下所能达到的字典序最小)。在第二个测试用例中,无法改进产品的名称,并满足所有条件。原创 2023-09-09 21:50:38 · 56 阅读 · 1 评论 -
【思维构造】Replace With Product—CF1872G
你的任务是在应用该操作后使数组的总和最大化。找到应用该操作的最佳子数组。很容易看出,通过将任何其他段替换为乘积,总和将小于。很容易看出,通过将任何其他段替换为乘积,总和将小于。)——测试用例的数量。接下来是测试用例的描述。每个测试包含多个测试用例。如果有多个解决方案,则输出其中任何一个。,而应用任何其他操作,数组的总和将减少。)——用于替换乘积的子数组的边界。的任何操作,那么数组的总和将保持为。每个测试用例的第一行包含一个整数。在第一个测试用例中,应用参数。每个测试用例的第二行包含。原创 2023-09-09 12:06:33 · 333 阅读 · 1 评论 -
【思维构造】PriceFixed—CF1539D
Lena 是莫斯科最节约的女孩。因此,当她的爸爸要求她买一些食物去乡间旅行时,她去了最好的商店——“价格固定”。帮助 Lena 计算她在最优购买顺序下需要花费的最小金额。注意,如果她愿意,她可以购买更多超过所需数量的产品。行中,每行包含一个产品描述。输出 Lena 完成所有购买所需的最小金额。种产品获取折扣所需购买的产品数量。可以证明无法花费更少。种产品所需的数量和购买第。种产品:她必须至少购买。) — 产品的数量。原创 2023-09-07 11:01:25 · 38 阅读 · 0 评论 -
【思维构造】Sorting By Multiplication—CF1861D
的顺序排序所需的最小操作次数(即满足条件。对于每个测试用例,输出一个整数——使。按严格升序排序所需的最小操作次数。每个测试用例的第一行包含一个整数。输入的附加约束:所有测试用例中。每个测试用例的第二行包含。)——测试用例的数量。第三个测试用例中,数组。,它不一定要是正数。执行这些操作后,数组。执行这些操作后,数组。原创 2023-09-03 20:10:46 · 95 阅读 · 0 评论 -
【思维构造】Queries for the Array—CF1861C
比赛的时候没有写到这个题,赛后补题的时候发现这个很不好想。又花了好长时间才把这个方法给全部理解了。最后才找到一个比较好理解的方法。原创 2023-09-02 19:00:48 · 245 阅读 · 0 评论 -
【思维构造】Two Binary Strings—CF1861B
考查找规律,代码很简单,但方法不好证明,本蒟蒻想了很长时间才理解了。比赛的时候就没有注意到。原创 2023-09-01 17:03:40 · 100 阅读 · 1 评论 -
【思维构造】 Omkar and Determination CF1583C
我们假设无论[x, y]是否为空都可以向左或向上移动(当然前提是移动到的格子为空~)。如果[x, y]可以退出(不考虑自身),则可以判断[x, y]是否为。假设网格为n * m的矩形,当前格子为 [x, y]。那么 [x, y] 是否为空只取决于“以[x, y]为右下角的矩形所包含的所有格子”。综上,已知一个网格中所以格子是否可以退出时,这个网格“可确定”(能退出每一个格子是否为空)的充要条件为。同理,如果一个格子是可退出的,那么这个格子为。如果一个格子是不可退出,那么这个格子为。原创 2023-08-31 14:53:45 · 67 阅读 · 0 评论