省选模拟96

A. 多边形

  容易发现当$k>3$时无解。

  然后容易证明当$k=3$时,只有$m=3$才是有解的。

  然后直接做不好做,考虑钦定然后容斥出合法方案。

  对于$k=3$,枚举一个点,然后计算另一个的方案数。

  其他情况类似,钦定满足条件的角,然后容斥。

  然后对于每一个$O(n)$的式子用组合恒等式大力化简就可以做到$O(1)$了。

B. 仙人掌

  考虑每个点周围的点的权值种类不会超过根号种。

  所以考虑维护每个点周围的点的权值,首先对于儿子的权值用数据结构维护,每次暴力对每个权值重构。

  对于父亲的贡献,可以简单得到父亲当前的权值,然后暴力修改维护即可。

C. 多项式

  假如前n个变量的总和已经确定为$X$,那么后面的贡献就是组合数,展开可以得到一个$m-n$次多项式。

  所以求出来前面总和的k次方的和就可以将这些东西代入多项式得到答案。

  考虑怎么求这个东西,直接倍增即可。

原文地址:https://www.cnblogs.com/hzoi-cbx/p/12891686.html