摘要:
"Link" 记$m=|S|,p=\lfloor\frac{n+m}2\rfloor$,我们可以得到一个比较trivial的$O(m^2n)$的dp算法。 设$f_{l,r,x}$表示能够匹配$S_l\cdots,S_r$的长度为$x$的回文串的个数。我们认为$l r$时并不存在限制,但是$l\le 阅读全文
摘要:
"Link" 首先给出一个有解的必要条件:存在$a\rightarrow c\rightarrow b$的一条点不相交路径。 必要性是显然的。 注意到保证存在$3$条$a\rightarrow b$的点不相交路径,因此这个条件也具有充分性,具体可以通过调整法证明。 那么我们先用最大流找出三条$a\r 阅读全文
摘要:
"Link" 先判断$k=n$,很显然有解的充要条件是$n=2^t(t\in\mathbb N)$,构造用二进制合并就行了。 然后若$2\nmid n$,那么此时一定有解,依旧可以类似地二进制分组构造。 若$2|n$,那么有解的充要条件是$k\ne n 1$,构造方法依旧是二进制分组。 阅读全文
摘要:
"Link" 任选两个点确定一条直线,有$\frac1{49}$的概率正确。 多随机几次就很靠谱了。 阅读全文
摘要:
"Link" 记忆化搜索。 将搜索的状态设为$(n,k,now,flg)$,表示深度为$n$,已有$k$位Prüfer Code,剩余$now$个需要被计算的位置,是否有父边。 假如当前的点为$x$,那么我们将答案打成一个三元的结构体$(a,b,c)$,表示答案为$ax+b+c\lfloor\fra 阅读全文
摘要:
"Link" 我们知道每走一步一定会往前走一列。 考虑求出$next_i$表示从$(i,1)$开始走,下一次走到第一列的时候在第几行。 可以先预处理$a_{i,j}=[l,r]$表示$\forall k\in[l,r]$,从$(k,1)$开始走,会走到$(i,j)$,不难发现这一定是个区间。 $O( 阅读全文
摘要:
"Link" 分类巨讨论zsbd。 "Link" ) 阅读全文
摘要:
"Link" 先将$a_i$升序排序,并将大于$g$的$a_i$变成$g$。 设$p_{i,j}$表示只占$[i,j]$的桌子的期望,$q_{i,j}$表示$[1,i)$的桌子占了$j$张的期望,这都可以利用区间dp求出。 $p_{i,j}$:考虑枚举最后占的桌子$k$,注意要乘上${j i\cho 阅读全文
摘要:
"Link" 首先答案显然不可能是$1$。 然后有一个很显然的方法是把度数最小的点的所有边删掉,注意到总的度数为$4n 4$,所以一定存在某个点度数不大于$3$,因此答案不大于$3$。 那么可行的答案就只有$2,3$。 也就是说要么两棵树各割掉一条边,要么一棵树割一条边另一棵树割两条边。 我们枚举割 阅读全文
摘要:
"Link" 先二分答案$lim$,那么我们现在要做的就是判定有多少个对$(x,y)$满足形成的答案不大于$lim$。 我们将所有$(x,y)$按区间是否相交分为两类,即一类是$y\ge x+r$,另一类是$y include include include include using i64=lo 阅读全文