07 2021 档案

摘要:一、题目 点此看题 二、解法 要放假了,今天下午真的有点水啊 \(...\) 首先有一个 \(\tt observation\):如果确定了第一行填的数和第二行填的数,那么此种情况的最优解是第一行从小到大排列,第二行从大到小排列,否则可以通过交换逆序对使得答案下降。 那么问题变成了决策每个数在哪一个 阅读全文
posted @ 2021-07-31 16:47 C202044zxy 阅读(160) 评论(0) 推荐(0)
摘要:一、题目 点此看题 注意翻译中有两点没说到:\(a_i\) 不被 \(k\) 整除;\(\sum a_i\leq 2000\) 二、解法 不难写出 \(O(3^n\sum a_i)\) 的子集枚举,但是显然 \(\tt T\) 飞并且无法优化。 深究这样 \(dp\) 不行的原因:其实是插入的 \( 阅读全文
posted @ 2021-07-31 10:16 C202044zxy 阅读(737) 评论(0) 推荐(1)
摘要:一、题目 两棵 \(n\) 个点的有根树,\(1\) 是这两棵树的根,这两棵树中叶子个数相等。 然后对于第一棵树的每一个叶子找出不同的第二棵树的叶子与之配对,连上 \(+\infty\) 的边。 找到删除边的边权和最小的删边方案使得: 两棵树根不连通。 两棵树所在联通分量是一棵树。 两棵树的并集是全 阅读全文
posted @ 2021-07-30 22:29 C202044zxy 阅读(84) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 真是第一次见,这是一道 \(dp\) 维护直线函数的题。 设 \(x_i=X\ \%\ a_1\ \%\ a_2\ ...\% \ a_i\),如果 \(x_i>0\),那么 \(X\) 减 \(1\) 时 \(x_1,x_2...x_i\) 必定减 \(1\),考虑到 阅读全文
posted @ 2021-07-30 21:39 C202044zxy 阅读(338) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 身为一个正常人拿到这道题,最难解决的是数出现偶数次的限制,那我的逻辑是放数,但是发现 \(dp\) 不动。 其实是 \(dp\) 主体选错了,我们直接选集合为 \(dp\) 主体,设 \(f[i]\) 表示考虑前 \(i\) 个集合的方案数。 这就是天才的逻辑,就像科比 阅读全文
posted @ 2021-07-29 15:31 C202044zxy 阅读(568) 评论(1) 推荐(0)
摘要:一、题目 点此看题 二、解法 首先我们考虑值域序列上决策,每个位置放 \(0/1\),要求任意两个 \(1\) 之间的距离不能是 \(x/y\),由于 \(n\) 很大但是 \(x,y\) 很小,可以猜测 \(x+y\) 是原序列的一段循环节,也就是这一段的最优解可以通过复制得到 \(n\) 的最优 阅读全文
posted @ 2021-07-29 11:01 C202044zxy 阅读(565) 评论(2) 推荐(0)
摘要:一、题目 点此看题 二、解法 交换操作真的很难做,而且距离是难以记录的,所以套路的 \(dp\) 方法是行不通的。 对于交换操作有一个神奇的转化:由于交换是全局任意交换的,我们考虑记录已经用到的黑点个数,如果用到的黑点个数不超过原有的黑点个数那么就是一种合法的操作,然后我们不记录距离去记录解决该点问 阅读全文
posted @ 2021-07-29 08:25 C202044zxy 阅读(543) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 套路:当只有两个关键状态量时,我们以一个量为主,一个量为辅思考问题。 那么我们以 \(a\) 边为主,因为不可能表示出原图的最小生成树所以我们开始找结论。根据 \(\tt kruskall\) 算法我们先把所有 \(a\) 边连起来,那么会形成若干个 \(a\) 边连通 阅读全文
posted @ 2021-07-28 20:51 C202044zxy 阅读(170) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 设 \(dp[u][0/1]\) 表示解决 \(u\) 子树内所有问题,\(u\) 的父边选不选的方案数,转移的时候把 \(dp[v][1]+w-dp[v][0]\) 从小到大排序,然后取一个前缀让 \(u\) 满足限制即可。 难点就是要对所有 \(x\) 求出答案,首 阅读全文
posted @ 2021-07-27 22:35 C202044zxy 阅读(74) 评论(0) 推荐(0)
摘要:这场题质量真的高,我愿称之为 \(\tt Atcoder\ Regular\ Counting\ 124\) E.Pass to Next 题目描述 点此看题 人和人是不能一概而论的,因为 \(\tt zxy\) 不知道想了多久的问题被小减一语道破天机。 \(n\) 个人排成一个环玩传球游戏,第 \ 阅读全文
posted @ 2021-07-27 19:57 C202044zxy 阅读(349) 评论(0) 推荐(0)
摘要:## 一、题目 [点此看题](https://www.luogu.com.cn/problem/CF827F) 注意在时间点 $b$ 是不能通过这条边的,每条边的通行时间是 $[a,b)$ ## 二、解法 这道题的难点就在于并不是越早到某个点越好,考虑需要较晚到某一个点通路才开放,现有快路径和慢路径 阅读全文
posted @ 2021-07-27 15:15 C202044zxy 阅读(353) 评论(0) 推荐(0)
摘要:没去 \(\tt NOI\) 现场的菜鸡$+$新高二退役狗来写一波题解。 一、题目 点此看题 二、解法 前置知识:行列式,矩阵乘法,高斯消元,比内$-$柯西公式。 你看这题真是奇怪得不行,我以前做过这种题吗?没关系,我们来搞一些 \(\tt observation\): 选取的路径数正好是 \(n_ 阅读全文
posted @ 2021-07-26 20:38 C202044zxy 阅读(181) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 首先把要求的东西翻译一下,其实就是找到一个 \(x\geq 0\),使得下列式子最小: \(\sum cnt(x+\max a-a_i)\) 其中 \(cnt(x)\) 表示 \(x\) 二进制位中 \(1\) 的个数,为了方便我们使 \(a_i\leftarrow\m 阅读全文
posted @ 2021-07-26 16:48 C202044zxy 阅读(475) 评论(0) 推荐(2)
摘要:一、题目 点此看题 二、解法 下次再也不找这种阴间题做了,根本想不到好吗? 首先做一个简单的转化:考虑让 \(k-1\) 第一次出现的位置大于 \(k\) 最后一次出现的位置。 考虑构造映射去描述好序列,你发现转化后的条件是比较连贯的,因为 \(k-1\) 第一次出现的位置大于 \(k\) 最后一次 阅读全文
posted @ 2021-07-25 18:15 C202044zxy 阅读(189) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 不得不说 \(\tt construction\ force\) 的 \(dp\) 题质量确实高,而且我敲出来调都没调,开心$\sim$ 首先看这道题就很好贪心,因为每个游戏可以多次打,所以一旦有激活机会后一定会一直打期望收益最大的那个关卡。记 \(m=\max b_i 阅读全文
posted @ 2021-07-24 16:05 C202044zxy 阅读(453) 评论(0) 推荐(1)
摘要:一、题目 点此看题 二、解法 考虑 \(dp\),首先选定 \(dp\) 主体,因为每个点有向左倒和向右倒两个状态,我们的主要目的是对这两个状态进行规划。设 \(dp[i]\) 表示考虑到 \(i\) 能覆盖的最大前缀,这样以前的状态既可以遗留问题(没填满),也可以帮助后面解决问题,但它的本质还是对 阅读全文
posted @ 2021-07-24 10:46 C202044zxy 阅读(1011) 评论(1) 推荐(7)
摘要:一、题目 点此看题 二、解法 首先根据农民伯伯都会的排序不等式(因为他们知道把最好的菜种进最好的地里),贪心策略是把人和马都按照权值大小排序,然后对应位相乘求和就行了,不难证明这是最优的匹配方案。 但是因为本题有第 \(i\) 个人不能和第 \(i\) 匹马配对的限制,所以说不一定取得到最优方案。这 阅读全文
posted @ 2021-07-23 22:14 C202044zxy 阅读(707) 评论(0) 推荐(2)
摘要:一、题目 点此看题 二、解法 高科技题,但是搞爆我的却是一个 &,函数传参的时候一定要注意啊! 设 \(dp[w][i]\) 表示前 \(i\) 个数划分了 \(w\) 段的最小权值和,转移: \(dp[w][i]\leftarrow dp[w-1][j]+(i-j)\times \max[j+1. 阅读全文
posted @ 2021-07-23 17:09 C202044zxy 阅读(108) 评论(0) 推荐(0)
摘要:C.Roughly Sorted 题目描述 如果一个排列每个位置上的逆序对个数都 \(\leq k\),那么它是好排列。假设你有排列 \(P\),每次可以交换两个相邻元素,用最小的步数得到好排列 \(P'\) 现给定 \(P'\) 和 \(k\),求可能的 \(P\) 有多少个。 \(n\leq 5 阅读全文
posted @ 2021-07-23 16:48 C202044zxy 阅读(151) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 前置知识:最小圆覆盖,高斯消元求圆心 根据随机增量法的复杂度分析,我们发现就算在高维情况它也是 \(O(n)\) 的,问题在于 \(m\) 维空间,给定 \(k+1\) 个在圆上的点,怎么求覆盖它们的最小圆?可以考虑高斯消元,但要推柿子。 结论:最小圆的圆心一定要在这 阅读全文
posted @ 2021-07-22 19:49 C202044zxy 阅读(126) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 定理:如果 \(p\) 不在集合 \(S\) 的最小圆覆盖中,那么它一定在集合 \(S\cup\{p\}\) 的最小圆覆盖上。 多次运用此定理即可,我们先把所有点 \(\tt random\_shuffle\) 一遍,然后维护前 \(i\) 个点的最小圆覆盖。如果 \( 阅读全文
posted @ 2021-07-22 11:09 C202044zxy 阅读(179) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 其实这题挺难的,而且我觉得网上的题解讲的有点不清楚 \(...\) 看到题目要求的是 \(f(x)^k\) 并且 \(k\leq 200\),搞一个傻逼斯特林反演即可: \(\sum_{x}f(x)^k=\sum_x\sum_{i=1}^k S(k,i)\cdot i! 阅读全文
posted @ 2021-07-22 09:55 C202044zxy 阅读(512) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 首先考虑定边怎么做,考虑构造得到最小解,我们先把所有环删掉,然后原图就剩下的若干条路径,我们把度为奇数的点作为某一条路径的端点,度为偶数的点不作为端点,那么答案就取到了下界:\(\sum[deg[u]\%2=1]\) 题目要求动态加边,并且强制在线,那就真的只能加边了呗 阅读全文
posted @ 2021-07-21 22:35 C202044zxy 阅读(85) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 张成线性空间的维数是 \(m\) 等价于线性不相关的向量有 \(m\) 个,把向量写成 \(n\times m\) 的矩阵的秩是 \(m\) 这里普及一下比内$-$柯西公式,对于 \(s\times n\) 的矩阵 \(A\) 和 \(n\times s\) 的矩阵 \ 阅读全文
posted @ 2021-07-21 17:06 C202044zxy 阅读(186) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 设 \(dp[i][j]\) 表示 \(j\) 时间走到 \(i\) 需要花费的最小期望钱数。 区别于随机游走问题,对于某状态 \(dp[u][j]\),需要决策一个后继节点 \(v\): \(dp[u][j]=\min_v(\sum_k dp[v][j+k]\time 阅读全文
posted @ 2021-07-20 22:19 C202044zxy 阅读(325) 评论(0) 推荐(0)
摘要:D.Inc,Dec-Decomposition 题目描述 点此看题 给一个长度为 \(n\) 的 \(A\) 序列,试构造单调不降的 \(B\) 和单调不增的 \(C\),满足 \(a_i=b_i+c_i\) 并且最小化代价: \(\sum_{i=1}^n|b_i|+|c_i|\) \(n\leq 阅读全文
posted @ 2021-07-20 16:41 C202044zxy 阅读(212) 评论(6) 推荐(0)
摘要:一、题目 点此看题 二、解法 发现本题 \(k\) 只有 \(2,3\) 两种取值,我们先考虑 \(k=2\) 的时候怎么做。 可以固定 \(x_i\),去找有没有 \(x_j\) 合法。但是题目是不接受 \(O(n^2d)\) 判断的,可以考虑一些必要的判据,比如我们对 \(j\in[1,i)\) 阅读全文
posted @ 2021-07-20 11:13 C202044zxy 阅读(188) 评论(0) 推荐(1)
摘要:一、题目 点此看题 二、解法 考试时把题目看错了,没有注意到 \(a_i\) 不降的条件。 考虑要求的东西是可能的排名情况,也就是求合法排列个数,状压可以将 \(O(n!)\) 的排列枚举优化成 \(O(2^n)\),那么这道题肯定会用上它。 如果我们不考虑 \(a_i\) 不降的限制,发现这个题根 阅读全文
posted @ 2021-07-19 20:44 C202044zxy 阅读(98) 评论(0) 推荐(0)
摘要:操作 题目描述 点此看题 解法 分裂有点难,但是发现分裂第一堆石子就相当于合并第二堆石子,问题就转化为两堆石子都能合并,最后达到相同的状态。 全部合并成一堆石子答案是 \(n+m-2\),考虑第一堆石子的某个子集和跟第二个子集的某个子集和相等,答案就能减少 \(2\),那么设计 \(dp[s]\) 阅读全文
posted @ 2021-07-19 17:10 C202044zxy 阅读(212) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 首先发现整个矩阵其实之和最后一行最后一列(我称之为边角)有关,如果确定了他们整个矩阵就确定了。考虑调整法,我们先让边角全为 $0$,那么得到的矩阵 $a$ 很可能是不合法的,我们考虑调整它。 调整有一个原则就是保持 $a$ 能构造出 $b$,调整 $a$ 的单个元素是困 阅读全文
posted @ 2021-07-18 12:15 C202044zxy 阅读(309) 评论(0) 推荐(0)
摘要:一、题目 点此看题 开始接受$...$痛苦不堪的回忆。 二、解法 你看它不用算具体的东西,只用算一个总和,这不用贡献法用什么? 考虑 \(v\) 的贡献,也就是保留 \([v,n]\) 的点和有关边时,和它能互通 \(u\) 点的个数。前 \([1,v)\) 不用考虑是因为如果和 \(u\) 能互通 阅读全文
posted @ 2021-07-17 20:05 C202044zxy 阅读(278) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 显然是连通性问题,直接最小生成树不好做,可以考虑 $\tt kruskall$ 重构树。 首先考虑 $x,y$ 能相互到达的充要条件,其实除了连通块是链的情况,都可以到达。转化一下就是连通块中存在度数大于等于 $3$ 的点或者边数大于等于点数。 我们把边权从小到大排序然 阅读全文
posted @ 2021-07-17 09:14 C202044zxy 阅读(67) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 首先选子树为 \(dp\) 主体,但是考虑没有时间做不动,我们假设子树 \(u\) 是在时间 \(i\) 被断开的,也就是断开操作是由于 \(u\) 的祖先引起的。设 \(dp[u][i]\) 表示子树 \(u\) 在 \(i\) 时间内被断开最后能得到的最大果汁,转移 阅读全文
posted @ 2021-07-16 22:52 C202044zxy 阅读(255) 评论(0) 推荐(0)
摘要:D. Excellent Arrays 题目描述 点此看题 对于一个长度为 \(n\) 的数组 \(a\),定义 \(F(a)\) 为满足 \(1\leq i<j\leq n\) 且 \(a_i+a_j=i+j\) 的二元组个数。 求有多少满足下列条件的数列 \(a\): 对于所有 \(a_i\), 阅读全文
posted @ 2021-07-16 22:37 C202044zxy 阅读(94) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 首先考虑任意两个不同的城市庇护所不同意味着什么。我首先想出来一个 \(\tt naive\) 的结论:每个叶子的庇护所一定是它的父亲,所以有解的条件是每个非叶节点至多连接一个叶子。 要让结论升级才能做题,我们考虑叶节点父亲的庇护所一定是他自己,那么这两个节点的匹配方案是 阅读全文
posted @ 2021-07-16 09:06 C202044zxy 阅读(256) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 首先拆限制,看似他给的是区间相等,其实是若干组单点相等。 那么把单点的限制用并查集连起来,我们只需要关系联通块个数即可。 问题转化为了每次给两个区间,要求区间对应位连边。线段树优化建图做不了,但是 \(st\) 表可以,设 \(fa[i][j]\) 表示以 \(i\) 阅读全文
posted @ 2021-07-15 22:21 C202044zxy 阅读(80) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 最后形成的强联通分量肯定是一个环,每个点的出度一直为 \(1\),那么我们只要让入度也都为 \(1\) 即可。 每个点保留权值最大的入边,其他入边贪心断开即可。 但是这样还有问题,操作过后可能会形成若干个环,我们要把这些小环接成一个大环。那么一个环上至少满足一个点他断开 阅读全文
posted @ 2021-07-15 21:45 C202044zxy 阅读(611) 评论(0) 推荐(0)
摘要:一、题目 题目描述 有 \(n\) 个点排成一列,相邻两个点之间连边,\(i\) 到 \(i+1\) 的双向边代价是 \(a_i\),转向的代价是 \(a_0\),现在我们想选出 \(m\) 个点,可以构成若干个回路,每个点最多被选一次,起点也算一次转向,试最大化代价。 比如选出的点是 1,3,2, 阅读全文
posted @ 2021-07-15 20:46 C202044zxy 阅读(1567) 评论(8) 推荐(2)
摘要:一、题目 点此看题 二、解法 把时间点排序,考虑每个时间段在什么条件下才会贡献,可以分成 \(4\) 种情况讨论(\(i\) 表示排序后这个点的人): \(i\) 进 \(i+1\) 出,什么情况下都可以贡献。 \(i\) 进 \(i+1\) 进,当且仅当 \(i+1\) 有钥匙才能开门,\(i\) 阅读全文
posted @ 2021-07-15 11:17 C202044zxy 阅读(554) 评论(0) 推荐(0)
摘要:F. Chainword 题目描述 点此看题 给出 \(n\) 个长度不超过 \(5\) 的原料字符串,两个人分别拿这些字符串任意拼接成长度为 \(m\) 的新字符串,求有多少种情况两人的新字符串完全相同。 \(1\leq n\leq 8,1\leq m\leq 10^9\) 解法 本题的关键是如何 阅读全文
posted @ 2021-07-14 22:17 C202044zxy 阅读(66) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 设 $dp[i]$ 表示把 $[1,r_i]$ 都治好的最小代价。注意这个状态并没有特殊限制时间,我们只需要保证最后所有人能被治好就行了。 我再进一步地解释这个状态,你可能会说这个状态很奇怪,我不一定要先治疗一个前缀,可以先从中间治起。那么你的说法是对的,所以我再三强调 阅读全文
posted @ 2021-07-14 21:46 C202044zxy 阅读(1029) 评论(0) 推荐(4)
摘要:一、题目 点此看题 二、解法 注意题目问的是区间啊,我以为是子序列就一直做不起。 \(d=0\) 特判,然后我们只考虑连续的$\bmod d$ 余数相同的一段,现在翻译一下题目条件: \([l,r]\) 中不出现相同的数。 \(\frac{\max[l:r]-\min[l:r]}{d}\leq k+ 阅读全文
posted @ 2021-07-14 12:04 C202044zxy 阅读(64) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 考虑每个点的推倒状态只有向左倒和向右倒,然后我们又要把所有骨牌推倒,所以设计 \(dp[i]\) 表示推倒前 \(i\) 个骨牌的最小代价,假设我们会处理 \(l[i],r[i]\) 表示向左推倒骨牌 \(i\) 覆盖的左端点,向右推倒骨牌 \(i\) 覆盖的右端点,转 阅读全文
posted @ 2021-07-14 10:48 C202044zxy 阅读(280) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 可以设计出一个暴力 \(dp\),设 \(dp[i][j]\) 表示前 \(i\) 个学校派出划艇最多为 \(j\) 的方案数,但是第二维太大了。 考虑我们只关心第二维的大小关系,而且这道题 \(n\leq 500\),所以可以把第二维离散化,离散化后形成了若干个区段, 阅读全文
posted @ 2021-07-14 09:08 C202044zxy 阅读(206) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 为了计数方便,我们把每个人看成不同的,我声称这对最后答案没有任何影响。 因为宝石的变化是放在宝石上的,所以我们以宝石为主体进行数学分析。每个宝石不同,我们根据宝石分裂情况来区分方案,那么总方案是 \(\frac{(n+d-1)!}{(n-1)!}\),然后我们考虑末状态 阅读全文
posted @ 2021-07-13 22:48 C202044zxy 阅读(1553) 评论(0) 推荐(4)
摘要:一、题目 点此看题 二、解法 \(k\) 很大还是考虑二分答案,主要是如何检查。 区间覆盖问题可以考虑染色,一开始所有点都是白色间代表第 \(i\) 种颜色,后染的颜色会覆盖先染的颜色。染色问题有一个很好的性质:每个点上的颜色都是最后覆盖它的颜色。 根据这个性质我们可以考虑对于固定的右端点,维护出所 阅读全文
posted @ 2021-07-13 20:30 C202044zxy 阅读(211) 评论(0) 推荐(1)
摘要:一、题目 点此看题 两个人玩博弈游戏,要求说出字符串在给定字典中,并且满足前三位是上一个字符串的后三位。一个字符串可以被重复说出,不能说出字符串者输,问第一个人先说出第 \(i\) 个字符串是结果是先手必胜$/\(平局\)/$先手必败。 \(n\leq 2\times 10^5,3\leq |s_i 阅读全文
posted @ 2021-07-12 22:38 C202044zxy 阅读(370) 评论(0) 推荐(0)
摘要:C.Errich-Tac-Toe 题目描述 点此看题 解法 先考虑 \(\tt easy\space version\),针对 \(\lfloor\frac{k}{3}\rfloor\) 来构造,可以把整张图三染色,一定有一种颜色满足格子 X 的数量不超过 \(\lfloor\frac{k}{3}\ 阅读全文
posted @ 2021-07-12 15:11 C202044zxy 阅读(252) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 首先设计出暴力 \(dp\),设 \(dp[i][j]\) 表示第一行考虑到 \(i\),第二行考虑到 \(j\) 的最大得分,先写转移: 扩展第一行,可以无得分让 \(i+1\);可以选从 \(i+1\) 开始的和为 \(0\) 的段(选右端点最小的) 扩展第二行,可 阅读全文
posted @ 2021-07-11 17:35 C202044zxy 阅读(338) 评论(2) 推荐(1)
摘要:一、题目 点此看题 注意一点:重新洗牌并不会导致集合 \(S\) 的变化。 二、解法 本题的关键是均匀随机洗牌,可以有一个 \(\tt observation\):\(S\) 中具体有哪些数字是没有关系的,我们只需要知道 \(S\) 中有多少数字。因为所有数字是全等概率出现的,我们关系的就只有出现和 阅读全文
posted @ 2021-07-10 12:51 C202044zxy 阅读(141) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 给的 \(O(n^3)\) 的数据范围,可以考虑计数 \(dp\) 一种显然的思路是依次考虑人的位置,比如我们考虑最后一个人的最终位置,但是初始位置到最终位置之间是坐满了人的,剩下左右两边又要重新分配人,划分子问题太复杂了,有点难做。 但是我们可以反过来考虑格子,设 \ 阅读全文
posted @ 2021-07-09 20:35 C202044zxy 阅读(530) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 考虑每次增删格子会有什么影响,快速求 \((x,y)\) 之间的最短路就可以解决修改了。 我们把第二种边看成区间 \([l,r]\),也就是 \(r\) 是 \(l\) 后面第一个满足 \(p_r>p_l\) 的点,现在考虑用区间去替换原来 \(i\) 到 \(i+1\ 阅读全文
posted @ 2021-07-04 11:36 C202044zxy 阅读(118) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 没有什么好的想法,就从图论的角度入手吧。 要根据题目特性来建图,首先要考虑把什么当做点的问题,如果把字符串的元素当成点是不好表示 子串必须包含同样数量的字符0与1 这个限制的。但是前缀和可以方便地表示这个限制,令 \(1\) 为 \(1\),\(0\) 为 \(-1\) 阅读全文
posted @ 2021-07-03 21:26 C202044zxy 阅读(279) 评论(0) 推荐(0)
摘要:一、题目 点此看题 二、解法 一开始不是很好入手,但是发现限制是至少两个元素出现最多,特殊情况是全序列出现最多的元素有两种,那么答案是 \(n\) 否则最多的数只有一种,记为 \(x\),不难证明最优的答案是一定包含 \(x\) 的,因为如果不包含 \(x\) 那么可以通过调整使得答案更大,我觉得本 阅读全文
posted @ 2021-07-02 13:30 C202044zxy 阅读(125) 评论(0) 推荐(0)