码迷,mamicode.com
首页 > 其他好文 > 详细

「考试」省选61

时间:2020-04-03 19:48:29      阅读:61      评论:0      收藏:0      [点我收藏+]

标签:一个队列   队列实现   抽象   答案   矩阵   math   大神   区间   视频   

T1
dy讲的原题。
建议去翻\(DC\)大神的\(dp\)视频课。

T2
结论题。
一种想法是抽象为一个\(ans+1 n\)的矩阵。
每次从上面一段连续区间向底层走。
维护每一个位置最高的高度是多少就可以得到答案了。
这里用一个队列实现。
每一个位置的队列长度可以用来更新答案。

T3
生成函数题。
考虑容斥。
用走了几条输入边来容斥。
\(dp[i][s]\)为当前在\(i\)点,经过的点集为\(s\)的方案数。
\(f[s]\)为经过的点集为\(s\)的方案数。
\(g[i][s]\)为经过了\(i\)条链的方案数。
\(F[i]\)为经过了\(i\)条链再整张图上的方案数。
于是答案就是\(\sum\limits_{i=1}^{nk}(-1)^{nk-i}F[i]\)
因为经过的输入边个数是\(nk-i\)

「考试」省选61

标签:一个队列   队列实现   抽象   答案   矩阵   math   大神   区间   视频   

原文地址:https://www.cnblogs.com/Lrefrain/p/12628441.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!