ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

10 23

10 23
  • 11.3
    • 考虑要以 \(x\) 为端需要的操作次数为 \(n - 3\) - 以 \(x\) 为端的个数
    • 考虑方案数
      • 如果有 \((x,p),(x,q),(p,q)\) 那一定存在一个 \(r\)\((p,r),(q,r)\) 则可以把 \((p,q)\) 变成 \((x,r)\)
      • 将所有对角线写成不经过 \(x\) 的弧的形式
        • 任意两个弧要么包含要么交的长度为 0
        • 每次操作都是选择一个不被别的弧包含的弧(极大弧),并删去
        • 考虑 \((p,q)\) 被删去后会产生 \((p,r),(r,q)\) 这两条可删去的弧
        • 我们可以把这个东西看成一个树形结构
      • 故我们可以把问题转换为求取森林的拓扑序数量
      • 一棵 \(m\) 个点的森林的拓扑序的数量即为 \(\frac{m!}{\prod\limits_{i} siz_i}\) , 这里的 \(m\) 即为两端均不为 \(x\) 的对角线数量
        • 考虑 \(l-r\) 的弧的子树大小为 \(r-l-1\)
      • 故考虑修改操作是区间乘,即可用线段树维护
  • 11.4

返回列表