纪中第十五天

 为什么今天是第十五天呢,因为我昨天又休息了一天(爽!!!)

  今天比了个赛,有点儿爽,因为我得了第七名

  T1:把相邻得个数存在a[i]里,依次枚举

  T2:找规律

  T3:一波暴力(听说要用搜索线)

  T4:迪屁

    50分做法:由于D[i]<=2,所以所有点在任意时刻的剩余可用度数不会超过2。设f[i][j][k]表示前i个点中剩下j个一类点,k个二类点的方案数,剩余i-j-k个点即为度数连满的点。转移的时候考虑下一个点的连边方式。

      100分做法:
发现最终答案之和有几个度数为1的点、有几个度数为2的点有关。所以可以设f[i][j]表示当前已经加入了i个度数为1的点,j个度数为2的点的总方案数。转移的时候考虑下一个点的连边方式。但是直接这样做相当于把连边又加了一个顺序,会有重复。可以强制规定在度数为1的点加完之后才可以加度数为2的点。
转移方程:
f[i+1][j]+=f[i-1][j]*i;(需要j==0)
f[i][j+1]+=f[i-2][j]*i*(i-1)/2;
f[i][j+1]+=f[i][j+1]+f[i+2][j-2]*j*(j-1)/2;
f[i][j+1]+=f[i][j-1]*i*j;

原文地址:https://www.cnblogs.com/WestJackson/p/11368930.html