华南理工大学“三七互娱杯”程序设计竞赛 HRY and codefire(概率期望DP)

https://ac.nowcoder.com/acm/contest/874/A

题目:有两个账号 , 一开始都为0级 , 求任意一个账号升级到N的期望

要求:如果当前账号嬴了 , 就继续沿用当前的账号,否则就更换其他账号,第i级嬴的概率是pi;

官方题解

因为dp[i][j] 涉及到 dp[j][i] 的价值 ,如果单纯的只是用一条式子是无法得出dp[i][j]的价值 , 应为这是从后开始计算的 , dp[j][i]还没有被计算到 ,所以必须需要两条方程 , 单纯的两条也是不行 , 因为dp[i][j]  所需要的dp[j][i] 在后面才计算出来 所以这样是不行的 , 那就需要联立方程了

#include<bits/stdc++.h>
using namespace std;
double dp[400][400],p[400];
int main()
{
    int T;scanf("%d",&T);
    while(T--)
    {
        int n;scanf("%d",&n);
        memset(dp,0,sizeof(dp));
        for(int i=1 ; i<=n ; i++)
        {
            scanf("%lf",&p[i]);
        }
        for(int i=n ; i>=1 ; i--)
        {
            for(int j=n ; j>=1 ; j--)
            {
                dp[i][j]=(p[i]*dp[i+1][j]+(1-p[i])*p[j]*dp[j+1][i]+1-p[i]+1)/(1-(1-p[i])*(1-p[j]));
                dp[j][i]=(p[j]*dp[j+1][i]+(1-p[j])*p[i]*dp[i+1][j]+1-p[j]+1)/(1-(1-p[j])*(1-p[i]));

            }
        }
        printf("%.4f\n",dp[1][1]);
    }

}

原文地址:https://www.cnblogs.com/shuaihui520/p/10792688.html

时间: 2024-10-10 00:44:13

华南理工大学“三七互娱杯”程序设计竞赛 HRY and codefire(概率期望DP)的相关文章

长安大学第四届“迎新杯”程序设计竞赛 H 圣诞节糖果【二分】

时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 131072K,其他语言262144K64bit IO Format: %lld 题目描述 圣诞节临近,彩虹岛的黑心商人??????的糖果店又开始热闹了起来,热心的??????来到??????的店里面帮忙包装糖果.店里面共有??堆糖果,其中第??堆有????颗糖果,??????让??????从中选择两堆糖果,这两堆糖果中每?? 颗包装在一起,如果最后还有剩余就归??????所有了,若两堆不足??个则全部归??????所有.作为糖果狂热

长春理工大学第十四届程序设计竞赛(重现赛)J.Printout

链接:https://ac.nowcoder.com/acm/contest/912/J 题意: 小r为了打校赛,他打算去打字社打印一份包含世界上所有算法的模板. 到了打字社,小r一看价格:总打印页数X0X0页以下(不含X0X0)x0x0元每页,X0∼X1X0∼X1页(不含X1X1)x1x1元每页,X1∼X2X1∼X2页(不含X2X2)x2x2元每页,X2∼X3X2∼X3页(不含X3X3)x3x3元每页,X3∼X4X3∼X4页(不含X4X4)x4x4元每页…… 小r转念一想,他可以多放一些白纸在

长春理工大学第十四届程序设计竞赛(重现赛)M.Orx Zone

链接:https://ac.nowcoder.com/acm/contest/912/M 题意: Daenerys Stormborn, 风暴中出生的丹尼莉丝,the Unburnt, 烧不死的,Queen of Meereen, 弥林女王,Queen of the Andals and the Rhoynar and the First Men, 安达尔人,罗伊那人,和先民的女王,Lord of the Seven Kingdoms, 七国之主,Protector of the Realm,

长春理工大学第十四届程序设计竞赛(重现赛)B

B Bowling Game 题目链接:https://ac.nowcoder.com/acm/contest/912/B 题目 CUST的队员打完省赛后,小r带着大家去打保龄球. 保龄球是一项难度非常高的游戏,然而这根本难不住校队成员,他们个个都很厉害(炸和)一发10个瓶都倒.尤其是小r,每次都能闭着眼睛一次扔倒10个瓶.他们当中也有一个并不那么厉害的下水道玩家,每次都能把球丢进下水道里,导致一个球瓶都砸不中. 几轮下来,我们发现回来的球越来越少,最后只剩几个9号球了.他们不爱丢9号球,因为太

长春理工大学第十四届程序设计竞赛(重现赛)H

H .Arithmetic Sequence 题目链接:https://ac.nowcoder.com/acm/contest/912/H 题目 数竞选手小r最喜欢做的题型是数列大题,并且每一道都能得到满分. 你可能不相信,但其实他发现了一个结论:只要是数列,无论是给了通项还是给了递推式,无论定义多复杂,都可以被搞成等差数列.这样,只要他精通了等差数列,他就能做出任何数列题目. 等差数列是数列的一种.在等差数列中,任何相邻两项的差相等,该差值称为公差.例如数列3,5,7,9,11,13,?就是一

长春理工大学第十四届程序设计竞赛(重现赛)F

F. Successione di Fixoracci 题目链接:https://ac.nowcoder.com/acm/contest/912/F 题目: 动态规划(Dynamic programming,简称dp)是一种通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法.例如,假设小x一步能爬1层或2层台阶,求小x爬n层台阶共有几种方法,就可以用dp计算:设Fi代表小x爬i层台阶共有几种方法,则Fi=Fi−1+Fi−2. 小x是练习时长两年半的acm练习生,喜欢口胡.dp.线段树.妙

长春理工大学第十四届程序设计竞赛F Successione di Fixoracci——找规律&amp;&amp;水题

题目 链接 题意:给出x数列的定义: $T_0 = a$ $T_1 = b$ $T_n = T_{n-2} \bigoplus T_{n-1} $ 求第 $n$ 项( $0 \leqslant a,b,c \leqslant 10^{18} $) 分析 $n$ 这么大,肯定是常数时间复杂度. 打表找规律,能发现循环节为3. 或者直接推导,$a \bigoplus b = c, \ b \bigoplus c = a, \ c \bigoplus a = b$ #include<bits/stdc

2017中国大学生程序设计竞赛 - 网络选拔赛 HDU 6156 数位DP

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6156 题意:如题. 解法:数位DP,暴力枚举进制之后,就转化成了求L,R区间的回文数的个数,这个直接做一个数位DP就好了.dp[jz][start][cur][state]表示jz进制下以start位起始到cur位状态为state(1表示已经回文,0表示没有回文)时回文数的个数. #include <bits/stdc++.h> using namespace std; typedef long

华南师大 2017 年 ACM 程序设计竞赛新生初赛题解

华南师大 2017 年 ACM 程序设计竞赛新生初赛题解 华南师范大学第很多届 ACM 程序设计竞赛新生赛(初赛)在 2017 年 11 月 20 日 - 27 日成功举行,共有 146 名同学有效参赛(做出 1 题).进入决赛的资格初定为完成并通过 5 题或以上,决赛时间是 12 月 3 日,地点未定. 题解 被你们虐了千百遍的题目和 OJ 也很累的,也想要休息,所以你们别想了,行行好放过它们,我们来看题解吧... A. 诡异的计数法 Description cgy 太喜欢质数了以至于他计数也