2/1总结

时间安排

7:30–7:40 看题,T1貌似可以分治,T2貌似是个类似于卡特兰数的东西,T3和 noip 非常像,貌似用割点什么的树形dp一下就行了。
7:40–8:10 T1,考虑分治,用hash表维护一下就行了。
8:10–9:50 T2, n^3 很好写,考虑直接用卡特兰数算,问题在于如何去重,尝试无果。
9:50–11:40 T3,貌似可以建造圆方树,对于 n^2 的当可以暴力跑,发现 \sum 有限制,于是需要虚树。仔细想了想发现 dp 会非常麻烦,不太能做,想着能不能直接对割点之间建图,然后是换根 dp 。写到最后发现,建的图有点问题。到最后没调出来。

回顾反思

T1: 属于分治的经典题,通过钦定答案,可以转化为开桶询问的问题。

T2:首先是去重的问题,假设钦定了左右括号配对的数量,那么这些配对会形成若干个连续段,那么在这些空隙中,必然由一个前缀右括号和左括号构成,这样就解决了去重的问题。那么假设钦定了 左括号数量,配对对数,有括号数量也会钦定,那么将模型看做格子图上路径问题,就可以组合数求解了。

T3:
圆方树+虚树+换根dp
圆方树要熟悉一下。
其二是计算方式的问题,要求所有方案下剩余点的数量和,可以转化为 n*方案数-所有方案下被删的点的数量和 ,这样的补集转化往往能大大解决问题。
虚树 dp 的时候,由于贡献往往只在虚树上的点上,所以贡献的最优性会有一些性质,这道题虽然一条虚树边上有许多点,但分析性质可得有用的点只有边的两端的点和虚树上的结点。这也可以简化问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值