HDU 4487 Maximum Random Walk(概率DP)
来源:互联网 发布:ppt的制作软件 编辑:程序博客网 时间:2024/05/16 17:20
题目链接:点击打开链接
思路:概率DP, 用d[i][j][k]表示第i步, 走到j点, 走过的最大值为k的概率。 然后最后用概率乘以最右边走到的点就是期望, 期望相加就是答案。
细节参见代码:
#include<cstdio>#include<cstring>#include<algorithm>#include<iostream>#include<string>#include<vector>#include<stack>#include<bitset>#include<cstdlib>#include<cmath>#include<set>#include<list>#include<deque>#include<map>#include<queue>#define Max(a,b) ((a)>(b)?(a):(b))#define Min(a,b) ((a)<(b)?(a):(b))using namespace std;typedef long long ll;typedef long double ld;const ld eps = 1e-9, PI = 3.1415926535897932384626433832795;const int mod = 1000000000 + 7;const int INF = 0x3f3f3f3f;// & 0x7FFFFFFFconst int seed = 131;const ll INF64 = ll(1e18);const int maxn = 200 + 10;int T,n,m,id;double d[2][maxn][maxn];double a, b;int main() { scanf("%d",&T); while(T--) { scanf("%d%d%lf%lf",&id,&n,&a,&b); int m = n; printf("%d ",id); n *= 2; int u = 0; memset(d[u], 0, sizeof(d[u])); d[u][m][m] = 1.0; for(int i = 0; i < m; i++) { memset(d[u^1], 0, sizeof(d[u^1])); for(int j = 1; j< n; j++) { for(int k = 1; k < n; k++) { d[u^1][j-1][k] += d[u][j][k] * a; d[u^1][j+1][max(k, j+1)] += d[u][j][k] * b; d[u^1][j][k] += d[u][j][k] * (1.0 - a - b); } } u ^= 1; } double ans = 0; for(int i = 0; i <= n; i++) { for(int j = 0; j <= n; j++) { ans += d[u][i][j] * (j - m); } } printf("%.4f\n",ans); } return 0;}
0 0
- hdu 4487 Maximum Random Walk (概率dp)
- hdu 4487 概率dp Maximum Random Walk
- hdu 4487 Maximum Random Walk(概率dp)
- HDU 4487 Maximum Random Walk 概率DP
- HDU 4487 Maximum Random Walk (概率DP)
- HDU 4487Maximum Random Walk 概率 dp
- HDU 4487 Maximum Random Walk(概率DP)
- 简单概率dp-hdu-4487-Maximum Random Walk
- hdu 4487 Maximum Random Walk(简单概率dp)
- hdu4487 Maximum Random Walk (概率dp)
- Hdu 4487 Maximum Random Walk
- hdu 4487 Maximum Random Walk
- hdu 4487 Maximum Random Walk
- HDU 4487 Maximum Random Walk
- UVALive 6175 Maximum Random Walk 期望+概率dp
- HDU Walk (概率DP)
- HDU 5001 Walk(概率DP)
- hdu 5001 walk (概率dp+矩阵)
- mysql面试必会基础(四)
- STL笔记之优先队列
- JSP
- Python文件写操作
- ajax简单跨域请求解决方案
- HDU 4487 Maximum Random Walk(概率DP)
- 第一篇博客,你好 世界!
- 如何用Maven创建web项目(具体步骤)
- URI与URL详解
- jdbc使用sqlserver2008作为数据源
- 机器学习基础(四十四)—— 优化
- Codeforces--658A--Bear and Reverse Radewoosh(模拟)
- 【iOS】一种仿京东搜索历史记录的表格的实现(sqlite3的使用)
- static关键字