D 给你一个长度为n的括号序列,然后你可以选择交换两个位置,你需要使得能够变成 合法括号序列的起点最多。 题解 人尽皆知的东西:合法的括号序列是,令'('为1,')'为-1,那么前缀和需要>=0,且最后的总和应该为0. 假设现在已经是交换好的序列了,那么答案个数,就是前缀和的最小值的个数。这是因为最 ...
分类:
其他好文 时间:
2020-02-28 13:39:50
阅读次数:
43
codeforces 1272 F. Two Bracket Sequences(三维dp + bfs) 题目大意 输入两个括号序列 s,t(不一定合法),你需要构造一个尽可能短的合法括号序列使得s,t 都是这个序列的子序列(子序列意味着不用连续) 解题思路 表示匹配到 的第 个字符,匹配到 的第 ...
分类:
其他好文 时间:
2020-02-12 21:57:14
阅读次数:
63
小蒟蒻duyi CSP爆炸之后一直在颓,所以直到最近才陆续订正完CSP的题/kel 以后不能这么颓了(flag) S D1T2 括号树 设$f[u]$表示根到$u$的路径上有多少子串是合法括号串。(即题目里的$k_u$,此变量名缺乏个性,故换之) 从根向每个节点dfs,容易求出$c[u]$:表示从根 ...
分类:
其他好文 时间:
2020-02-07 10:23:39
阅读次数:
93
$\text{括号树}$ 本题中合法括号串的定义如下: $()$ 是合法括号串。 如果 $A$ 是合法括号串,则$(A)$ 是合法括号串。 如果 $A$,$B$ 是合法括号串,则 $AB$ 是合法括号串。 小 $Q$ 定义 $s_i$为:将根结点到$i$号结点的简单路径上的括号,按结点经过顺序依次排 ...
分类:
其他好文 时间:
2020-01-19 12:55:49
阅读次数:
109
题目描述 众所周知,佳爷是集训队最强,他经常喜欢鄙视集训队最菜的PC,这天他又来了,他丢给PC一道题目: 给你一个字符串,该字符串只包含符号 '(’ 和 ‘)', ,我们称那些左右括号可以一一对应的括号字符串为完美字符串, 比如"()()()", "((()))", "((()))()()", 都是 ...
分类:
其他好文 时间:
2019-12-15 21:41:14
阅读次数:
170
"传送门" 题意: 给出$s,t$两个合法括号序列,现在找到一个长度最小的合法的序列$p$,使得$s,t$都为其子序列。 思路: 考虑$dp:dp[i][j][d]$表示第一个串在$i$,第二个串在$j$,答案串左括号和右括号之差为$d$时的最短长度。 那么转移时枚举下一位转移即可。 还需要考虑一点 ...
分类:
其他好文 时间:
2019-12-15 12:45:21
阅读次数:
143
P5658 括号树 题解 太菜了啥都不会写只能水5分数据 啥都不会写只能翻题解 题解大大我错了 我们手动找一下规律 我们设 w[ i ] 为从根节点到结点 i 对答案的贡献,也就是走到结点 i ,合法括号串又多了几个 sum[ i ] 为从根节点到结点 i 总共合法括号串数 ()()() w[i] ...
分类:
其他好文 时间:
2019-12-15 10:51:49
阅读次数:
96
卡特兰数 C(n,2n)/(n+1) 合法括号 C(n,2n)/(n+1) 出入栈 C(n,2n)/(n+1) 凸多边形的三角形划分方案 n+2边形 f(n)=f(0)f(n 1)+f(1)f(n 2)+ +f(n 1)f(0)=C(n,2n)/(n+1) n个结点的二叉树种数 f(n)=f(0)f ...
分类:
其他好文 时间:
2019-10-17 23:28:13
阅读次数:
114
"题目蓝链" Description 给定一个正整数$n$,问有多少个长度为$2n$的合法括号序列包含一个给定的子括号序列$s$(不一定合法) $n \leq 100, |s| \leq 200$ Solution 我们可以先预处理出$to[i][0/1]$,表示如果后缀已经$s$匹配上了前$i$个 ...
分类:
其他好文 时间:
2019-08-30 23:17:48
阅读次数:
93
大意: 将所有长度为2*n的合法括号序列建成一颗trie树, 求trie树上选出一个最大不相交的边集, 输出边集大小. 最大边集数一定不超过奇数层结点数. 这个上界可以通过从底层贪心达到, 所以就转化为求奇数层结点数. 然后就dp求出前$i$为'('比')'多j个的方案数, 奇数层且合法的时候统计一 ...
分类:
其他好文 时间:
2019-04-30 10:45:25
阅读次数:
227