• bzoj1444: [Jsoi2009]有趣的游戏


    首先我们有一个很(naive)的想法是构建出转移矩阵,然后矩阵快速幂迭代足够多次,得到的结果约为答案

    复杂度(O((nl)^3logk)),正确性玄学

    但是我们肯定不是要介绍这种方法,而是另外一种

    高斯消元经典应用:解图上期望(DP)

    我们设(x_i)为整局游戏经过(x)点的期望次数,则初始时(x_0=1)(p_{i,j})(i)转移到(j)的概率,则有

    [x_0=1+p_{0,0}x_0+p_{1,0}x_1……+p_{n-1,0}x_{n-1} ]

    [x_i=p_{0,i}x_0+p_{1,i}x_1……+p_{n-1,i}x_{n-1}(i≠0) ]

    把未知项移到一侧

    [-x_0+p_{0,0}x_0+p_{1,0}x_1……+p_{n-1,0}x_{n-1}=-1 ]

    [-x_i+p_{0,i}x_0+p_{1,i}x_1……+p_{n-1,i}x_{n-1}=0(i≠0) ]

    由于题目要求移动到某个标记节点就停止,所以标记节点处的期望次数就是它所对应的概率

    所以直接高斯消元就可以得到答案,至于转移矩阵用AC自动机跑个trie图出来就好了

  • 相关阅读:
    IO编程
    File类
    对于Java集合理解
    Java泛型
    多线程编程
    异常处理
    Static.final修饰符、super关键字及常量与变量
    java类的基本结构
    数组
    二叉树后序遍历 递归 非递归
  • 原文地址:https://www.cnblogs.com/knife-rose/p/12028078.html
Copyright © 2020-2023  润新知