5.23联考题解

A:
发现一个合法的图一定是一个n-2个偶数度点,2个奇数度点的图,这两个奇数度点之间有边就删,没边就加,对应的欧拉回路图是唯一的
我们反着考虑这种对应关系,假设我们已知对图操作后得到的欧拉回路图G,可以发现对于这n个点完全图中的每一条边,若G中有这条边,删去这条边可以得到一个合法的图,若G中没有这条边,加上这条边也可以得到一个合法的图,所以其实ans=n(n1)2f(n),f(n)是n个点的欧拉回路图个数,可以dp求

B(bzoj4356):
这篇题解说的非常详细
概述一下
有个结论是最终的回路一定围住了左上角到每个城市左上角的最短路,证明大概是如果有一段(s,t)没有包含这个最短路,我们可以把这一段路径改成(s,t)的最短路,答案不会更劣
然后把每个端点拆成4个点,这四个点相邻的点,他们之间的边如果没有被最短路径阻隔就连一条长度为0的边
对于原图中的边,对应两条拆后的点之间的边,如果这条边不在某个城市内部就连上
要求最小环,最小环断开左上角点(1,4)之间的边后就变成了1到4的最短路,跑一次dijskral就行了
正确性的话,意会一下会发现加上(1,4)后就是围着所有城市跑了一个最小环
(其实没有图我觉得怎么说都不怎么清楚…)

C:
直接做不好做,考虑模型转换
设有n种颜色,每种颜色有ai个球,共有m个球,给每种颜色的球标号1~ai,要求标号为1的必须放在最前面

我们定义每种颜色第一次出现的位置为这种颜色的位置,对于一个颜色排列,他对应m!i=1nsi种合法排列,siai的后缀和
证明:设这个颜色排列为p,第一个球是p1中标号为1的球的概率是1m,然后去掉颜色p1的所有球,剩下的球里第一个球是p2中标号为1的球的概率是1map1....于是这个颜色排列出现的概率是1i=1nsi

如果是每种颜色都要求标号为1的球在最前面,求总的方案数,我们直接算m!ai就是答案
但是我们是要对每种颜色排列求m!i=2nsi,就是最后一种颜色不要求标号为1的球在最前面,求合法排列数

考虑容斥,设最后一种颜色是last,他后面至少有j种颜色,这j种颜色分别有bi个球,bi=t,在他前面的n1j种颜色分别有ci个球,last的位置是pos,那么他贡献

(1)j(malastt)!ci(mpost+alast1)(t+alast1)!bialast

(最后要乘上alast是因为最后一种颜色不要求标号为1的球在最前面)

我们可以画减一下柿子,设k=t+alast,有

(1)j(mk)!(k1)!aialast2pos(mposk1)

发现这个东西只和j,k有关,那个last一定是在选出的j个数里面枚举的,我们可以dp组合数前面的部分,在dp的方程里顺便算上alast2

h[i][j][k]表示dp了前i个数,当前选了j个数,和为k,(mk)!(k1)!ai的和,f[i][j][k]表示dp了前i个数,当前选了j个数,和为k,(mk)!(k1)!aialast2的和,做个O(n2m)的dp

阅读更多
版权声明:...............转载说一声并注明出处qaq............... https://blog.csdn.net/L_0_Forever_LF/article/details/80444686
个人分类: 乱七八糟的东西
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭