• 省选模拟45


    A.

      考虑给整个矩阵按照每行为一个字符串建出一颗trie树,然后给每个节点存一下出现在第几行就可以统计答案。

      考虑如何得到整个矩阵的答案,那么接下来要做的就是将trie的第一层节点删掉,这个东西可以简单地用trie树合并实现,在合并的过程中维护答案即可。

      用splay启发式合并的复杂度似乎更加优秀,但是并不知道为什么。

    B.

      看到与运算就能想到按位处理,然后发现对于一个端点来说不同的结果只有log种。

      于是维护这log个位置就行了,然后将询问离线,在右端点处处理所有的询问。

      然后就对应了区间修改,区间查询,直接维护就行。

    C.

      考虑枚举最大值出现的位置,然后只要得到从前向后出现$a-1$个特殊点,后面出现$b-1$的方案数就可以统计答案。

      然后发现这个东西可以简单dp,于是将状态转移方程写出来之后发现就是第一类斯特林数。

      于是答案就是$sumlimits_{i-1}^n s(i-1,a-1) s(n-i,b-1) C(n-1,a-1)$。

      考虑这个东西的实际含义,就是一共选出来$a+b-2$,并且前$a-1$个环和后$b-1$个环不等价的方案数。

      所以答案就是$s(n-1,a+b-2)*C(a+b-2,a-1)$。

      然后只要求出来一行斯特林数即可,直接倍增就行了。

  • 相关阅读:
    TensorFlow实战5——TensorFlow实现AlexNet
    TensorFlow实战4——TensorFlow实现Cifar10识别
    TensorFlow实战3——TensorFlow实现CNN
    基础定理推证
    中考几何汇总
    Onenote
    高中数学教材整理
    云盘
    12-27问题
    圆锥曲线(1)
  • 原文地址:https://www.cnblogs.com/hzoi-cbx/p/12494562.html
Copyright © 2020-2023  润新知