HDU 4870 Rating 概率DP(高斯消元)
来源:互联网 发布:网络借贷监管细则全文 编辑:程序博客网 时间:2024/05/30 21:59
题意:初始rating为0,每次比赛有p的概率变为min(x+50,1000),(1-p)的概率变为(x-100,0).
0.3<=p<=1.0,某人用两个账号 每次用rating小的账号比赛,问有1个账号rating为1000时,比赛次数的期望?
S的下一个状态为S'=ax+by,E(ax+by)=aE(x)+bE(y)
rating不超过1000 设dp[a][b] rating为a,b时 有一个号等于1000时 参加比赛次数的期望
因为每次用较小的一个,比赛的最后一步肯定为(950,950)->(1000,950) 每个状态又都是50的倍数,获胜一次50分离散化成1分 则设dp[i] i->20的期望次数.
0.3<=p<=1.0,某人用两个账号 每次用rating小的账号比赛,问有1个账号rating为1000时,比赛次数的期望?
S的下一个状态为S'=ax+by,E(ax+by)=aE(x)+bE(y)
rating不超过1000 设dp[a][b] rating为a,b时 有一个号等于1000时 参加比赛次数的期望
因为每次用较小的一个,比赛的最后一步肯定为(950,950)->(1000,950) 每个状态又都是50的倍数,获胜一次50分离散化成1分 则设dp[i] i->20的期望次数.
dp[i]=1+p*dp[i+1]+(1-p)*dp[i-2] 有环 因为只有20个方程,移项后高斯消元,最后答案为2x[0]-x[19].
#include <bits/stdc++.h>using namespace std;typedef long long ll;const int N=25;double p,a[N][N],x[N];int equ,var;void init(){memset(a,0,sizeof(a));//d[i]=1+p*d[i+1]+(1-p)*d[i-2]//(p-1)d[i-2]+d[i]-pd[i+1]=1for(int i=0;i<=20;i++){x[i]=1;a[i][i]=1;if(i<20)a[i][i+1]=-p;if(i>=2)a[i][i-2]=p-1.0;elsea[i][0]+=p-1.0;}//cout<<a[0][0]<<' '<<a[1][0]<<endl;equ=var=20;}int Gauss(){for(int k=0,col=0;k<equ&&col<var;k++,col++){int r=k;//精度for(int i=k+1;i<equ;i++)if(fabs(a[i][col])>fabs(a[r][col]))r=i;//if(fabs(a[r][col]<eps) return 0;if(r!=k){for(int j=col;j<var;j++)swap(a[k][j],a[r][j]);swap(x[k],x[r]);}//a[k][col]->1x[k]/=a[k][col];for(int j=col+1;j<var;j++)a[k][j]/=a[k][col];a[k][col]=1;for(int i=0;i<equ;i++){if(i!=k){//a[i][col]消为0x[i]-=x[k]*a[i][col];for(int j=col+1;j<var;j++)a[i][j]-=a[k][j]*a[i][col];a[i][col]=0;}}}return 1;}int main(){while(cin>>p){init();Gauss();double ans=2.0*x[0]-x[19];printf("%.7lf\n",ans);}return 0;}
阅读全文
0 0
- HDU 4870 Rating(概率dp+高斯消元)
- HDU 4870 Rating 概率DP(高斯消元)
- 【HDU】4870 Rating 概率DP
- hdu 4870 Rating 概率dp
- hdu 4870 Rating (概率dp)
- hdu--4870 Rating(高斯消元,概率)
- HDU 4870 Rating (概率+高斯消元)
- hdu 4870 Rating (概率dp)
- hdu 4870 Rating(概率DP&高数消元)
- hdu 4870 Rating (高斯消元解概率dp)
- [HDOJ 4870] Rating [概率DP]
- hdu 4870 Rating 多校第一场 概率dp
- 【HDU 4870】Rating【DP】
- HDU 4870 Rating 2014 Multi-University Training Contest 1 J题 概率DP+高斯消元
- Rating - HDU 4870 期望dp
- HDU 4870 Rating(高斯消元)
- hdu 4870(概率Dp)
- hdu 4870 Rating 高斯消元/递推
- JAVA之装饰者模式
- 《深入理解Java虚拟机》个人读书总结——虚拟机类加载机制
- 系统移植之uboot源代码简要分析(2)
- Map集合的EntrySet方法
- Qt 子窗口上控件的槽函数不响应
- HDU 4870 Rating 概率DP(高斯消元)
- idea 部署spring springMVC 与mybatis的整合
- Stream API
- hdu 2222 keywords search (AC自动机 模板)
- 关于学习NDK基础知识这些就够了(一)
- 西部开源运维unit7
- github使用
- EL表达式的用法(四)--使用EL调用Java方法(JSTL中的函数)
- 【动态规划(一)】动态规划基础