把博客园图标替换成自己的图标
把博客园图标替换成自己的图标end

随笔分类 -  思维

摘要:题目概述 在这个编辑器中,可以执行如下几种操作来输入某个字符串,设 \(X\) 为屏幕上的字符串,\(Y\) 为剪切板中的字符串,初始均为空串: 操作 A:输入字符 \(c\),即将 \(X\) 更新为 \(X+c\)。 操作 B:选择所有字符并剪切,即将 \(Y\) 更新为 \(X\),并将 \( 阅读全文
posted @ 2025-11-18 21:56 high_skyy 阅读(7) 评论(0) 推荐(0)
摘要:题目概述 给定一个整数数组 \(b_1, b_2, \ldots, b_n\)。 如果一个整数数组 \(a_1, a_2, \ldots, a_n\) 满足对于每个 \(i\)(\(1 \leq i \leq n\)),至少满足以下两个条件之一: \(b_i = a_i\),或者 \(b_i = \ 阅读全文
posted @ 2025-11-10 20:20 high_skyy 阅读(3) 评论(0) 推荐(0)
摘要:题目概述 你需要确定 \(n\) 个数,每个数形如 \(\frac{1}{2^x}(x\geq 0)\),其中 \(x\) 是非负整数,求他们的和为 \(k\) 的方案。 数据范围:\(1\leq k\leq n\leq 3000\)。 分析 真的妙! 我们假设最后的结果为 \(\{\frac{1} 阅读全文
posted @ 2025-11-10 19:37 high_skyy 阅读(5) 评论(0) 推荐(0)
摘要:题目概述 给一个含有 \(n\) 个点和 \(m\) 条边的无向连通图,求恰好有 \(d\) 个叶子的生成树的个数。 数据范围:\(1\leq d\leq n\leq 10,m\leq \frac{n(n-1)}{2}\)。 分析 注意到 \(n\leq 10\),我们可能会有 \(2^n\) 或者 阅读全文
posted @ 2025-11-07 11:40 high_skyy 阅读(6) 评论(0) 推荐(0)
摘要:题目概述 Snuke 决定玩 \(N\) 张卡片和一个双端队列(即 deque)。每张卡片上显示一个从 \(1\) 到 \(N\) 的整数,而 deque 最初是空的。 Snuke 将按照从 \(1\) 到 \(N\) 的顺序,一次将卡片插入 deque 的开头或末尾。然后,他将执行以下操作 \(N 阅读全文
posted @ 2025-10-30 21:39 high_skyy 阅读(10) 评论(0) 推荐(0)
摘要:题目概述 给定长度为 \(n\) 的 \(a,b\),给定 \(m\) 个区间 \(l,r\),如果 \(\sum_{i=l}^r a_i=\sum_{i=l}^r b_i\),那么就令这个区间的 \(a_i=b_i\)。 问能否将所有的 \(a\) 变成 \(b\)。 分析 转化一下不难想到令 \ 阅读全文
posted @ 2025-10-29 20:37 high_skyy 阅读(10) 评论(0) 推荐(0)
摘要:题目概述 给出一棵树,边权为 \(1\),现在让你求一个完全图的最大生成树的边权和,其中 \((i,j)\) 的边权为两个点在树上的路径。 动态加叶子节点。 分析 许多 trick 的题目。 考虑不加点怎么做,可以想到 Tree MST,用了点分治进行边优化,使得边的数量为 \(\mathcal{O 阅读全文
posted @ 2025-10-29 09:49 high_skyy 阅读(11) 评论(0) 推荐(0)
摘要:题目概述 这是一个 \(n\) 个点的无向图 \(G\),然后给你 \(m\) 次操作。 给你每个点的点权 \(p_i\),定义一条边 \((i,j)\) 的边权为 \(p_i+p_j\) 每个操作对应 \((x,l,r)\) 保证 \(x\notin [l,r]\)。 然后对于所有的 \(y\in 阅读全文
posted @ 2025-10-28 21:48 high_skyy 阅读(19) 评论(0) 推荐(0)
摘要:题目概述 Alice 有 \(n\) 张卡牌,第 \(i\)(\(1 \le i \le n\))张卡牌的正面有数字 \(a_i\),背面有数字 \(b_i\),初始时所有卡牌正面朝上。 现在 Alice 可以将不超过 \(m\) 张卡牌翻面,即由正面朝上改为背面朝上。Alice 的目标是让最终朝上 阅读全文
posted @ 2025-10-20 10:58 high_skyy 阅读(13) 评论(0) 推荐(0)
摘要:题目概述 题目链接:https://www.luogu.com.cn/problem/P3643。 给你 \(n\) 个班级,每个班级要么不选数要么选的数在 \([a_i,b_i]\),且选的数比编号比他小的班级选的数都要大,问有多少种方案(对 \((10^9+7)\) 取模)。 分析 感觉挺经典的 阅读全文
posted @ 2025-10-17 22:14 high_skyy 阅读(19) 评论(0) 推荐(0)
摘要:题目概述 题目链接:https://www.luogu.com.cn/problem/P5366。 有编号为 \(1\) 到 \(n\) 的物品,小 \(X\) 忘记了自己选的什么物品,它只记得他选的部分的物品的编号最大公约数为 \(g\),最小公倍数为 \(l\)。现在给你 \(q\) 个询问,每 阅读全文
posted @ 2025-10-17 20:26 high_skyy 阅读(15) 评论(0) 推荐(0)
摘要:题目概述 题目链接:https://www.luogu.com.cn/problem/P3084。 有 \(n\) 个牛,拍了 \(m\) 张照片,拍了 \([a_i,b_i]\) 中的牛,现在牛群中有一些特殊的牛,而且每一张照片有且仅有一个特殊的牛。问最多有多少特殊的牛。 分析 一开始会想到跟区间 阅读全文
posted @ 2025-10-16 15:28 high_skyy 阅读(14) 评论(0) 推荐(0)
摘要:题目概述 定义一个 test 为一个长 \(n+1\) 的序列且第 \(1\) 项是 \(n\)。 定义一个 multitest 为满足如下条件的序列: 后 \(n−1\) 项可以划分为 \(m\) 个 test。 第 \(1\) 项为 \(m\)。 给定一个序列 \(a\),你需要对于 \(a\) 阅读全文
posted @ 2025-10-13 11:45 high_skyy 阅读(10) 评论(0) 推荐(0)
摘要:题目概述 有 \(n\) 个位置有 \(m\) 个水滴,你在 \(0\) 的位置,每过一个单位,有水滴的地方个数都少 \(1\)。 其中:\(1\leq n\leq 300,-10^9\leq x_i\leq 10^9\)。 分析 感觉很典。 首先先对 \(x\)(带上 \(0\))排序。 我们考虑 阅读全文
posted @ 2025-10-13 11:05 high_skyy 阅读(3) 评论(0) 推荐(0)
摘要:我们括号匹配的经典做法就是把左括号看作 $+1$,右括号看作 $-1$,那么任意一个位置上的前缀和必须 $\geq0$,且最后一个位置的前缀和必须为 $0$。 这个可以引申出来一个定理: > 对于第 $i$ 个左括号一定满足其位置 $pos\leq 2i-1$。 显然的,因为如果不满足就说明前面的右括号多了,也就是上一个前缀和出现了负数。 那么我们就转化为了处理左括号与这个的偏序关系,又因为字典序天然的贪心,所以说我们从前往后枚举能不能填左括号,如果能填就尽量填。 那怎么判断呢?我们只需要判断这个位置能不能找到偏序关系即可,而且与它数字相同的那一组也要满足。 这个思路很巧妙,位置用 `set` 维护就行了。 阅读全文
posted @ 2025-10-10 09:37 high_skyy 阅读(8) 评论(0) 推荐(0)
摘要:感觉很典,所以就记下来了。 我们考虑一个非常重要的事实: - 田忌赛马对于每一个 $a_i$ 找的是第一个比他大的 $b_i$。 - 而字典序最大又需要前面的尽可能大。 这似乎产生了矛盾,让这道题目看起来有点难。 我们考虑不用 `multiset` 或者双指针求这个值,我们考虑分治的过程。 CDQ 分治是这样的: >对于左区间算好其分内的答案,右区间算好其分内的答案。 > >要合并区间的时候,左区间和右区间匹配就行了。 那么我们只需要记录每个区间剩下多少个 $a$ 中的元素和 $b$ 中的元素还没有匹配即可。 最精华的部分来了:由于我们对于每一个 $a_i$ 肯定进行二分答案是否可行,因为字典序本质上就有一个贪心的过程。我们考虑把这个思想搬到一个可支持修改的线段树上面即可。 在线段树上面这个是好维护的,于是这道题就做完了。 阅读全文
posted @ 2025-10-10 08:27 high_skyy 阅读(13) 评论(0) 推荐(0)
摘要:思路跟 [P5770 [JSOI2016] 无界单词](https://www.luogu.com.cn/problem/P5770) 类似,都是一位一位确定的。 我们考虑状态压缩 $dp$。 首先我们枚举第 $i$ 个位置,一遍一遍得出其所要坐的人。 阅读全文
posted @ 2025-09-29 22:33 high_skyy 阅读(10) 评论(0) 推荐(0)
摘要:考虑区间 $dp$。 设 $f_{i,j}$ 表示处理 $[i,j]$ 最小的总惩罚值。 分类: - 产品 $i$ 第一个出栈,则有 $f_{i,j}=t_i\times sd_{i,j}+f_{i+1,j}$ - 产品 $i$ 第 $k$ 个出栈,则有 $f_{i,j}=f_{i+1,k}+f_{k + 1,j}+st_{i,k}\times(d_i+sd_{k+1,j})$。 第二种情况第 $k$ 个出栈,那肯定 $i+1$ 到 $k$ 都已经出完栈了,所以后这些贡献。 阅读全文
posted @ 2025-09-29 19:18 high_skyy 阅读(7) 评论(0) 推荐(0)
摘要:# AT_agc012_c [AGC012C] Tautonym Puzzle ## 题目描述 当字符串 $ x $ 满足以下条件时,称 $ x $ 为*好字符串*。 - 条件:$ x $ 可以表示为某个长度不少于 $ 1 $ 的字符串 $ y $ 重复两次所得的字符串 $ yy $。 例如,`aa`、`bubobubo` 等是好字符串,而空字符串、`a`、`abcabcabc`、`abba` 等都不是好字符串。 “ワシ”与猫头鹰设计了关于好字符串的谜题。请找出一个满足下列条件的字符串 $ s $。在本题的约束条件下,一定存在这样的字符串。 - $ 1\leq |s|\leq 200 $ - $ s $ 仅由用 $ 1 $ 至 $ 100 $ 的整数表示的 $ 100 $ 种字符构成。 - $ s $ 的 $ 2^{|s|} $ 个子序列中,成为好字符串的子序列有 $ N $ 个。 ## 题目分析 这显然是一道构造题目,高质量的构造题目。 我们注意到填什么似乎并不重要,重要的是种类不同。 阅读全文
posted @ 2025-09-25 15:05 high_skyy 阅读(21) 评论(0) 推荐(0)
摘要:# CF520E Pluses everywhere 题目分析 ## 题目概述 给定一个 $n$ 位的十进制数,可以在数字之间加恰好 $k$ 个 `+`,得到一个式子,求每种方案的这个式子的和。 对 $10^9+7$ 取模,数据范围:$1\leq n\leq 10^5$。 ## 分析 有点意思。 不难想到设 $f_{i,j}$ 表示前 $i$ 个数填 $j$ 个加号的方案和,转移是简单的,考虑在不在前面放 `+` 即可。 但是这不是本题的思路。 像这种求所有的全局的方案,一般考虑每一个位置对于总共答案的贡献是多少。 我们考虑从前往后的第 $i$ 个位置,这个数填在当前分割出来的数的从前往后数第 $j$ 位,显然 $j\leq n - i + 1$。 那么对于当前他的数值方面的贡献为 $a_i\times 10^j$ 阅读全文
posted @ 2025-09-23 21:42 high_skyy 阅读(9) 评论(0) 推荐(0)

浏览器标题切换
浏览器标题切换end