Loading

06 2021 档案

摘要:*3100 的思维题果然可怕。 我们用长度为 \(n\) 的序列 \(a\) 表示选择的集合。如果集合中包含数 \(i\) ,那么 \(a_i=1\) ,否则 \(a_i=0\) 。 那么我们需要找出包含 \(1\) 最多的长度为 \(n\) 的 \(0/1\) 序列,使得任意两个 \(1\) 的间 阅读全文
posted @ 2021-06-26 10:29 7KByte 阅读(79) 评论(0) 推荐(0)
摘要:比 D 题的阴间欧拉路径好想多了( 首先如果 \(n=0\) 就是 nim 游戏,当且仅当 \(x=y\) 时先手必败。 我们定义先手必胜为 \(1\) ,先手必败为 \(0\) ,那么我们可以画出一个 \(0/1\) 表格,格子 \((x,y)\) 上的数表示对应状态先手的胜负。 如果 \(n=0 阅读全文
posted @ 2021-06-25 17:44 7KByte 阅读(85) 评论(0) 推荐(0)
摘要:做过最神的数数题之一。 先考虑如果给定 \(h\) ,如何求出 \(A\) 。 首先最后一个数一定会留下,倒数第二个数如果和最后一个数相等,则减一,否则一直保留下去。 所以模拟一下我们发现,从后向前扫一遍,如果后面没有出现 \(h_i\) ,则 \(h_i\) 就是当前位置的最终值,否则 \(h_i 阅读全文
posted @ 2021-06-25 09:12 7KByte 阅读(122) 评论(0) 推荐(0)
摘要:直接朴素模拟一下,时间复杂度是 \(\mathcal{O}(TN^2)\) ,可以通过 \(40\%\) 个测试点。 我们只需要记录 \(0/1\) 表示是否可达,直接状压,可以做到 \(\mathcal{O}(TN)\) 转移。但是有些格子在某些时间不可到达,处理这个限制仍然是 \(\mathca 阅读全文
posted @ 2021-06-24 22:22 7KByte 阅读(169) 评论(0) 推荐(0)
摘要:题意不是很复杂,只不过出题人强行把题面写的很长。 首先 \(D\) 很小,所以对于每个询问,我们可以直接找出两个人信任的人的集合,然后双指针扫一遍即可。 对询问离线,然后维护每个人的集合即可,这道题就做完了( 但是本题强制在线,把小清新模拟题强行变成毒瘤题。 我们需要记录,每个人,在每一时刻,信任的 阅读全文
posted @ 2021-06-21 22:52 7KByte 阅读(79) 评论(0) 推荐(0)
摘要:综合数数题。技巧性很强。 转化一下,求所有长度为 \(n\) 的排列的置换环的长度的 \(\rm lcm\) 的乘积。 考虑转化为数数问题,求 \(x=\rm lcm\) 的排列个数。 还是不好求,转化为前缀和,求 \(x\mid \rm lcm\) 的排列个数。 这个形式就比较好看,因为这等价于对 阅读全文
posted @ 2021-06-17 23:14 7KByte 阅读(75) 评论(0) 推荐(0)
摘要:关于我读错题调了一个小时这档事,这个关注操作不具有传递性,也就是说如果 \(x\) 关注 \(y\) ,\(x\) 所在强连通分量的人不用关注 \(y\) 。。。 题意比较简单,转化一下,给定 \(N\) 个点,支持加边,维护强连通分量,每个分量的贡献为 \(size^2-size\) ,对于缩点后 阅读全文
posted @ 2021-06-17 23:13 7KByte 阅读(76) 评论(0) 推荐(0)
摘要:最关键的一步,转化为最短路。 对于每个方案我们看成一个点,对于两个方案 \(i,j\) ,当且仅当 \(R_i-L_j+1\ge|T_i-T_j|\) 时,从点 \(i\) 向点 \(j\) 连边。 形象化的,我们将时间作为纵轴,房屋作为横轴,发现一次治疗就是一条平行于横轴的路径,而两次治疗之间的衔 阅读全文
posted @ 2021-06-14 15:49 7KByte 阅读(319) 评论(0) 推荐(2)
摘要:一个环上有 \(N\) 个人,\(M\) 个苹果树,每一秒每个人顺时针走一米,每隔 \(C\) 秒长一个苹果,\(Q\) 次询问,每次询问第 \(V_i\) 个人在 \(T_i\) 秒内能摘多少苹果。 不难发现如果相邻两个人间隔 \(\ge C\) ,那么上一个摘的苹果这个人一定能摘到,否则上一个人 阅读全文
posted @ 2021-06-14 12:02 7KByte 阅读(146) 评论(0) 推荐(1)
摘要:\(K\) 非常小,先找特殊性质。 首先 \(K=1\) 的时候直接求交集即可。 对于 \(K=2\) ,先考虑固定第一个点。我们令左的右边界为 \(x\) ,那么第一个点的横坐标为 \(x\) 一定最优。因为如果横坐标 \(>x\) ,一定会漏掉某个矩形,如果 \(<x\) ,而不存在右端点 \( 阅读全文
posted @ 2021-06-13 19:58 7KByte 阅读(97) 评论(0) 推荐(0)
摘要:奇奇怪怪的交互题。 有 \(2N\) 只变色龙,每条变色龙有一个性别,一个颜色,和一个喜欢的颜色不同的异性。其中恰好 \(N\) 男 \(N\) 女,\(N\) 种颜色每种颜色恰好两条变色龙。 每次可以选一些变色龙出来,如果第 \(i\) 条龙和它喜欢的龙同时被选了,那么它就变成喜欢龙的颜色,否则不 阅读全文
posted @ 2021-06-13 10:53 7KByte 阅读(77) 评论(0) 推荐(0)
摘要:给定 \(n\) 个数,可以选则其中的若干个数,代价为选择的数之和。求第 \(k\) 小代价和方案。代价相同比较方案的字典序。 首先对将数从小到大排序,然后用堆维护二元组 \((i,j)\) 表示代价为 \(i\) ,上一个选择的是第 \(j\) 个数。 那么有两种决策,第一种是选择第 \(j+1\ 阅读全文
posted @ 2021-06-11 21:02 7KByte 阅读(112) 评论(0) 推荐(0)
摘要:值得一想的构造题(评分虚低? 先考虑第一问,求总代价最小。 对于叶子节点,它可以和它的父节点交换。 但是它有的兄弟节点是叶子,而父节点只有一个。 我们将所有兄弟节点排成一行,那么第 \(i\) 个点移动到第 \(i+1\) 个节点,父节点移动到第 \(1\) 个节点,最后一个节点移动到父节点。这正好 阅读全文
posted @ 2021-06-10 21:15 7KByte 阅读(96) 评论(0) 推荐(0)
摘要:基础数数题。 曼哈顿距离不方便数点,比较套路的转化为切比雪夫距离。 那么现在要数三元组 \((i,j,k)\) 个数使得两两距离相等。 首选一下发现只用两种情况,第一种是三个点构成等腰直角三角形,第二种是三个点构成锐角三角形使得存在一条平行于坐标轴的边,且该边上的高和它的长度相等。 充分性也不难证明 阅读全文
posted @ 2021-06-09 22:55 7KByte 阅读(77) 评论(0) 推荐(0)
摘要:近期做的最好的贪心题之一。 翻了一下官方题解貌似是转化为树上问题然后线段树维护,可能出题人想少了没有想到贪心写法。懂日语的小伙伴可以研究一下Solution 。 第一步不难想到对于所有的星星按 \(Y\) 从小到大排序,这样限制条件转化为选了一颗星星后,接下来不能选择一个区间内的星星。 那么对于当前 阅读全文
posted @ 2021-06-09 22:24 7KByte 阅读(243) 评论(0) 推荐(0)
摘要:这题看起来人畜无害,非常小清新的 DS 题,但写起来就不会这么想了。 题目大意,给定一个长度为 \(N\) 的序列 \(S\) ,需要回答 \(Q\) 次询问,每次询问 \(\sum\limits_{L\le i\le R}\max\limits_{i-T\le j\le i}\{S_j\}\) 。 阅读全文
posted @ 2021-06-08 21:38 7KByte 阅读(290) 评论(0) 推荐(0)
摘要:支持向集合中加入或删除一格区间,并支持询问,求出一个子集,在满足最大公共子区间最小的前提下,最小公共超区间的最小值。最小公共超区间指包含集合中所有区间的最小的区间。 首先选取的集合只包含两个区间。 分开讨论,如果所有区间的最大公共子区间不为空,那么一定有一个区间卡在右端点,另一个卡在左端点,只用选这 阅读全文
posted @ 2021-06-08 14:37 7KByte 阅读(157) 评论(0) 推荐(0)
摘要:先考虑 \(60\) 分做法,每种颜色恰好选择一个。 那么最优值一定是全部选最小的,最大值一定是全部选最大的。 经典贪心模型,我们用 \(m\) 个指针表示每种颜色选到了第几个,每次从选择一个指针向后移动一格,同时用堆维护当前最小的状态,可以做到 \(\mathcal{O}(N+MK)\) 的时间复 阅读全文
posted @ 2021-06-08 10:28 7KByte 阅读(243) 评论(1) 推荐(1)
摘要:给定一个边权为 \(0/1\) 的完全图,对于每个起点 \(i\) 构造一条最短的,经过所有点,且边权最多只变化一次的最短路径。 首先要覆盖所有点,所以路径长度不可能优于 \(n-1\) 条边。 所以我们考虑构造长度为 \(n-1\) 条边的方案。 考虑归纳法,如果前 \(k-1\) 个点构造出了 阅读全文
posted @ 2021-06-07 20:47 7KByte 阅读(101) 评论(0) 推荐(0)
摘要:考虑依次填入每个位置。 最后一个位置只能填 \(d_i=n\) 的位置,第 \(k\) 个位置只能填 \(d_i\ge k\) 的位置。 我们随着 \(k\) 的减小,决策集合扩大。 那么对于第 \(n\) 个位置,一定选择 \(d_i=n\) 中最大的 \(i\) 。依次类推,第 \(k\) 个位 阅读全文
posted @ 2021-06-07 17:02 7KByte 阅读(83) 评论(0) 推荐(0)
摘要:给定一个 \(n\times m\) 的网格图,生成一颗直径为 \(k\) 的树。 首先不难得到一个粗略的上下界。直径不可能超过 \(n\times m -1\) ,不可能小于 \(n+m-2\) 。 但是手算一下 \(2\times 2\) ,\(2\times 4\) 之类的网格,发现也无法构造 阅读全文
posted @ 2021-06-07 16:25 7KByte 阅读(120) 评论(0) 推荐(0)
摘要:数数综合题。 对于子任务 \(1\) 直接枚举所有点的颜色,同时记录一下当前是否满足条件,时间复杂度 \(\mathcal{O}(nk^n)\) 。 对于子任务 \(2\) 点数很小,考虑状压 \(\rm DP\) 。 我们定义状态 \(f[i][S]\) 表示使用恰好 \(i\) 种颜色,其中状态 阅读全文
posted @ 2021-06-07 15:10 7KByte 阅读(146) 评论(0) 推荐(0)
摘要:结论:无论怎么走后手一定赢。 这应该是这道题中最难想到的。 这里的一定赢是指不用考虑任何策略,都能躺赢( 反证法,假定先手赢了,此时场上有奇数个位置被填了,那么一定存在去掉空格后相邻的两个格子颜色相同,它们之间还能再填至少一个,所以后手必胜。 然后就非常简单了,我们计算最终状态,如果最终状态有 \( 阅读全文
posted @ 2021-06-07 12:50 7KByte 阅读(88) 评论(0) 推荐(0)
摘要:T1: とてもたのしい家庭菜園 4 区间加,比较套路的做法是差分,转化为单点加。 单峰序列等价于差分序列存在一个断点,断点之前都是正整数,断点之后都是负整数。 我们枚举一下断点即可。 #include<bits/stdc++.h> #define rep(i,a,b) for(int i=a;i<= 阅读全文
posted @ 2021-06-06 21:11 7KByte 阅读(145) 评论(0) 推荐(0)
摘要:贪心神题。 手算一下不难得到 \(\mathcal{O}(N^2)\) 的贪心。 我们从 \(S\) 点出发,每次选择与当前点距离 \(\le U\) 的 \(B\) 最小的点,如果这个点的 \(B\) 比当前点小,则将能量填充至恰好到达该点,否则就将燃料填满。 直接二分可以做到 \(\mathca 阅读全文
posted @ 2021-06-06 17:59 7KByte 阅读(162) 评论(0) 推荐(0)
摘要:前言 前置知识:无。 本文基于Euclidea。 一个画图网站(大雾 这确实是一个尺规作图的网站,但不仅能够作图,更多是对几何的探索和思考。 在阅读之前,您需要学会熟练运用基本作图工具。在单元alpha和beta有对各个工具的详细说明。 Part 1 规则说明 可直接跳过( 这是第一关的界面。 左上 阅读全文
posted @ 2021-06-06 15:19 7KByte 阅读(537) 评论(0) 推荐(0)
摘要:太菜了完全不会计算几何,开新坑(一定不会咕咕咕 建立平面直角坐标系。 点 \(P\) ,用点对 \((x,y)\) 表示 。 向量 \(\vec{a}\) ,同样用点对 \((x,y)\) 表示。 向量 \(\overrightarrow{AB}\ =\ (x_B-x_A,y_B-y_A)\) 。 阅读全文
posted @ 2021-06-06 15:15 7KByte 阅读(157) 评论(0) 推荐(0)
摘要:欢迎来到 @7KByte 的博客 这里是博客代码的缺省源 阅读全文
posted @ 2021-06-06 15:12 7KByte 阅读(825) 评论(2) 推荐(5)