10 2025 档案

摘要:test24 超级集合super 正序不太好考虑,考虑一下倒序怎么做。假设当前的位置为 \(x\),我们来考虑上一轮的位置是什么,设 \(c(y)\) 表示上一轮 \(<y\) 的 \(a_k\) 个数即编号 \(y\) 向本轮的减少量,应该有 \((x+c(v)=y) \in (a_{c(v)}, 阅读全文
posted @ 2025-10-19 21:01 Hypoxia571 阅读(6) 评论(0) 推荐(0)
摘要:test23 前后缀排序sort 复制数组然后 sa 即可。 像忘了哪个题目一样,先考虑删除 \(s_i,s_k\) 哪个会更小,不妨令 \(i<j\)。考虑 \(s_j\) 是 \(i\) 后面第一个不同的字符,发现删除点在 \([i+1,j-1],j,[j+1,n]\) 的比删除 \(i\) 的 阅读全文
posted @ 2025-10-19 20:58 Hypoxia571 阅读(5) 评论(0) 推荐(0)
摘要:test22 编辑数组edit 首先要求任何时候任何元素不能为负是假的,用加法之后用减法撤销即可。 我们希望差分数组变成 \(0\),首先发现操作是 \(d_{i/i+1}\gets d_{i/i+1}+1,d_{i+1/i}\gets d_{i+1/i}-1\),那么同奇偶的 \(d\) 可以任意 阅读全文
posted @ 2025-10-18 16:32 Hypoxia571 阅读(7) 评论(0) 推荐(0)
摘要:test21 摩尔县mex 首先 \(\text{mex} \{a_{l,\dots,r}\}\neq k\) 的条件是 \(\exists i\in [l,r],a_i=k\) 或者 \(\exists v\in [0,k),\forall a_i\neq v\)。所以我们修改的办法有两种, \( 阅读全文
posted @ 2025-10-16 14:45 Hypoxia571 阅读(9) 评论(0) 推荐(0)
摘要:test20 异或xor 首先 Bob 可以将 \(a\) 两两匹配,永远拿跟 Alice 匹配的另一个,现在问题变成了最小化 \(\{a_{l_i}\oplus a_{r_i}\}\)。 比较经典的从高位到低位贪心,先考虑第一位,\(0/1\) 的数量都是偶数的话答案的这一位可以是 \(0\),否 阅读全文
posted @ 2025-10-14 19:17 Hypoxia571 阅读(9) 评论(0) 推荐(0)
摘要:test19 深度优先搜索dfs 先不考虑顺序,一次操作相当于 \((x,x+1)\to x\),那么显然是从大到小一直一直做到不行,要求只有 \(1\) 个 \(0\) 且对于 \(a_i\) 存在 \(a_i-1\)。 那么我们在有序数列上考虑类似的过程,拿取一个最大的 \(a\) 删掉(有多个 阅读全文
posted @ 2025-10-14 19:14 Hypoxia571 阅读(6) 评论(0) 推荐(0)
摘要:test18 签到题sign 好像做过,设 \(f(i)\) 表示选定 \(k=i\) 时的答案,这个显然可以 \(O(n)\) 求出来,写一个 nth_element 即可。 首先 \(f(n-k+1)\) 最大,具体的可以假设最后一个区间被选取,因为区间包含,贡献可以一直替换到一个不选的位置,最 阅读全文
posted @ 2025-10-14 16:19 Hypoxia571 阅读(11) 评论(0) 推荐(0)
摘要:test17 阅读全文
posted @ 2025-10-14 16:16 Hypoxia571 阅读(6) 评论(0) 推荐(0)
摘要:test16 一个困难的问题difficult 首先区间排序是假的,因为可以冒泡排序,这样子可能好考虑一点。 不难发现可以倒序考虑,要贡献的选择后缀中最小未选择的即可,构造的话可以直接从后往前考虑每次最小值的位置一定在上一个贡献位置的前面,那么直接排序拉到要贡献的位置即可。 #include<bit 阅读全文
posted @ 2025-10-11 20:21 Hypoxia571 阅读(7) 评论(0) 推荐(0)
摘要:test15 公交bus 题目都帮忙写好了 \(i\) 合法等价于存在车 \(j\) 满足 \(|x_j-x_i|\leq t_j-t_i\),也就是同时满足 \(t_i-x_i\leq t_j-x_j\) 和 \(x_i+t_i\leq x_j+t_j\),是一个二维偏序的形式,答案显然就是不能被 阅读全文
posted @ 2025-10-09 22:12 Hypoxia571 阅读(6) 评论(0) 推荐(0)
摘要:test14 占卜divination 设 \(c_i\) 表示查询 \([i-1,i]\) 的次数,显然如果 \(c_i\geq 4\) 那么可以确定 \(s_{i-1}/s_i\)。 对 \(c_{l-1}=c_{r+1}=0,c_{l\to r}\neq 0\) 的一段考虑合法性。首先考虑开头 阅读全文
posted @ 2025-10-09 22:11 Hypoxia571 阅读(6) 评论(0) 推荐(0)
摘要:test13 魔法 magic 首先 \(g\) 可以只通过 \(s_i=s_{i+1}=1\) 的数量和 \(s_1/s_{n+m}\) 的取值确定。 不管首尾只考虑第一个条件,容易得到一个做法,设第 \(i\) 个 \(1\) 在 \(l_i/r_i\),那么第 \(i\) 个 \(1\) 在 阅读全文
posted @ 2025-10-09 22:11 Hypoxia571 阅读(9) 评论(0) 推荐(0)