首页 > 其他分享 >CF605E Intergalaxy Trips 题解

CF605E Intergalaxy Trips 题解

时间:2024-07-27 16:17:54浏览次数:16  
标签:CF605E 题解 sum 编号 Intergalaxy Trips

Description

  • \(n\) 个点的有向完全图。
  • \(i \to j\) 的边每天出现的概率均为 \(p_{i,j}\),若 \(i = j\),有 \(p_{i,j} = 1\)。
  • 每天可以选择一条存在的出边走过去或停留在原地不动。
  • 求最优策略下从 \(1\) 到 \(n\) 的期望天数。
  • \(n \le 10^3\)。

Solution

设 \(f_i\) 表示 \(i\) 到 \(n\) 的期望天数。

假设 \(f\) 已经求出,那么 \(i\) 每次走到的下一步 \(j\) 一定是满足 \(i\to j\) 这条边出现且 \(f_j\) 最小的点。

容易发现如果 \(f_j>f_i\) 则 \(i\) 下一步无论如何不会走到 \(j\)。

所以可以得出转移方程:

\[f_i=\sum_{f_j<f_i}p_{i,j}f_j\prod_{f_k<f_j}(1-p_{i,k})+f_i\prod_{f_j<f_i}(1-p_{i,j})+1 \]

移项可得:

\[f_i=\frac{\sum_{f_j<f_i}p_{i,j}f_j\prod_{f_k<f_j}{(1-p_{i,k})}}{1-\prod_{f_j<f_i}(1-p_{i,j})} \]

考虑已经确定了前 \(k\) 小的 \(f\) 值,如何求出第 \(k+1\) 小的编号。

注意到只考虑前 \(k\) 小的贡献,对于一个没确定的 \(i\),再计算一个 \(f_j<f_i\) 对 \(i\) 贡献后 \(f_i\) 一定不会变大,所以如果当前 \(f_i<f_j\),则 \(i\) 一定不会在 \(j\) 后面,否则 \(f_i\) 计算 \(f_j\) 的贡献后只会更小,与 \(i\) 在 \(j\) 后矛盾。

所以第 \(k+1\) 小的编号就是只考虑前 \(k\) 小的贡献的没确定的位置里 \(f\) 值最小的编号。

时间复杂度:\(O(n^2)\)。

Code


标签:CF605E,题解,sum,编号,Intergalaxy,Trips
From: https://www.cnblogs.com/Scarab/p/18327098

相关文章

  • [题解]P2672 [NOIP2015 普及组] 推销员
    P2672[NOIP2015普及组]推销员为了便于操作,将住户信息按疲劳值从大到小排序。那么对于选\(X\)个住户,有\(2\)种情况:选疲劳值前\(X\)大的住户,答案即为\(\sum\limits_{i=1}^Xa[i]+2\times\max\limits_{i=1}^Xs[i]\)。选疲劳值前\(X-1\)大的住户,然后在剩下的住户中,距离比......
  • 《梦醒蝶飞:释放Excel函数与公式的力量》21.2 问题解决策略
     第21章:综合案例分析 21.2问题解决策略在综合案例分析中,解决问题的策略涉及多个步骤,从问题的识别、分析到实施解决方案和评估效果。通过系统的方法和多学科的知识,可以高效地解决复杂的问题。以下将介绍一个具体案例,并通过详细的步骤展示如何制定和实施问题解决策略。案例......
  • Codeforce 962 Div3 C~E 题解
    C题目大意​给定两个字符串a,b,q个询问,每次操作可以将a[i]赋值为任意一个字符,每次询问[l,r]区间内使得sorted(a[l,r])==sorted(b[l,r])的最小操作次数分析​ 不妨先考虑一个区间如何判断sorted后的字串是否相等,发现跟字符出现的次数有关,于是考虑前缀和预处理每一个26......
  • ABC273F Hammer 题解
    ABC273FHammer题解题目大意数轴上有\(n\)个锤子和\(n\)堵墙,第\(i\)个锤子位于\(x_i\),第\(i\)堵墙位于\(y_i\),第\(i\)个锤子可以对应的敲开第\(i\)堵墙。以原点为起点,给定终点\(t\),问最少移动多少个单位长度才能走到\(t\)。必须拿到对应锤子敲开墙才能走过这堵......
  • Codeforces Round 962 (Div. 3) 题解
    A.Legshttps://codeforces.com/contest/1996/problem/A翻译:农夫约翰的农场又迎来了美好的一天。农夫约翰来到农场后,数了数n条腿。众所周知,农场里只住着鸡和牛,一只鸡有2条腿,而一头牛有4条腿。假设约翰农场主数清了所有动物的腿,那么他的农场里最少有多少动物?思路求最少......
  • stata 代码实现熵值法计算 含常见问题解答
    适用:面板数据均可stata版本:无要求例如,使用了一个10年的省级面板数据,含15个指标,现在来计算各地区的熵值法得分。其中,x1x2x3x4x6x7x8x9x11x12x13x14x15是正向指标;而x5x10是负向指标。1.定义面板,定义指标的正负。tssetidyearglobalxlist1"x1x2x3x4x6x......
  • CF585F Digits of Number Pi 题解
    Description给定长度为\(n\)的数字串\(s\)和长度为\(d\)的不含前导零的数字串\(x,y(x\ley)\)。求存在长度至少为\(\left\lfloor\frac{d}{2}\right\rfloor\)的子串是\(s\)的子串的数字串\(t\in[x,y]\)的数量。\(n\le10^3\),\(d\le50\),答案对\(10^9+7\)取......
  • CF578E Walking! 题解
    Description给定一个长度为\(n\)的只包含L,R的字符串\(s\)。构造一个\(n\)排列\(p\)满足\(s[p_i]\nes[p_{i+1}](1\lei<n)\)。最小化\(p\)中\(p_i>p_{i+1}(1\lei<n)\)的数量。\(n\le10^5\),数据保证有解。Solution考虑把\(p\)中的每个极长连......
  • 小信小友逛庙会 题解
    题目id:9774题目描述小信与小友相约逛庙会。但是庙会人很多,他们走散了。庙会能表示成\(n×m\)的矩阵,小信在'\(C\)',小友在'\(D\)','\(.\)'表示能走,'#'表示店铺(也就是不能走)。每分钟,小信可以往\(8\)个方向移动一格,而小友可以移动一次或者两次,每次可以往\(4\)个方向(上下左右)移动一......
  • 开心消消乐 题解
    题目id:8578题目描述\(A\)酱最近在玩开心消消乐,由于是异次元的游戏,所以规则可能和地球上的有所不同。开心消消乐是一个在大圆环上进行的游戏,环上有若干个宝石,每颗宝石都有自己的积分,由于消消乐是一个三消游戏,我们每次可以挑选其中一个宝石消去,消去宝石的积分为他的积分和左右相......