摘要:        
吃完饭回来写。 刚开始以为是图直接不可做。 考虑设 \(f_{i, j}\) 为第 \(i\) 个点相邻 \(j\) 个点被选且 \(i\) 不被选,把选自己的贡献用个 \(g\) 存一下即可。 然后你发现就是枚举每个儿子选不选就做完了,出这种题比较难崩。    阅读全文
posted @ 2025-10-09 17:04
Alexande
阅读(8)
评论(0)
推荐(0)
        
            
        
        
摘要:        
其实 \(4, 5\) 操作都不重要,重要的是这个维护的思路。 考虑维护两个栈,插入的话就往前插就插入第一个栈,否则插入第二个栈,此时我们可以动态的维护一个 DP 数组,表示每个栈中的答案。 如果删除的话,我们就向指向的那一侧删除,如果一个栈删完了,我们就将剩余元素拿出来,暴力分成两半到两个栈里重构    阅读全文
posted @ 2025-10-09 16:42
Alexande
阅读(7)
评论(0)
推荐(0)
        
            
        
        
摘要:        
比较符合我的弱点。 考虑到给你 \(a\) 的话这个东西怎么求,相当于现在给你一个序列 \(a\),求其中所有不同子序列个数。 考虑增量递推,假设目前要加入一个字符 \(x\),那么考虑会算重哪些子序列,一定是也以 \(x\) 结尾的子序列,具体来说,考虑设 \(f_{i, j}\) 为枚举到第 \    阅读全文
posted @ 2025-10-09 16:08
Alexande
阅读(4)
评论(0)
推荐(0)
        

 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号