hdu 3076 ssworld VS DDD(概率dp)
2015-08-11 22:30
435 查看
#include <cstdio> #include <cstring> #include <algorithm> using namespace std; int hp1 , hp2 ; double dp[2][2100] ; double a , b , p ; double ka[10] , kb[10] ; int main() { int i , j , flag ; while(scanf("%d %d", &hp2, &hp1)!=EOF) { for(i = 1 ; i <= 6 ; i++) scanf("%lf", &ka[i]); for(j = 1 ; j <= 6 ; j++) scanf("%lf", &kb[j]); memset(dp,0,sizeof(dp)); a = b = p = 0.0 ; for(i = 1 ; i <= 6 ; i++) for(j = 1 ; j <= 6 ; j++) { if(i > j) a += ka[i]*kb[j] ; else if( i < j ) b += ka[i]*kb[j] ; else p += ka[i]*kb[j] ; } dp[0][0] = dp[1][0] = 1.0 ; flag = 0 ; for(i = 1 ; i <= hp1 ; i++) { flag = 1 - flag ; for(j = 0 ; j <= hp2 ; j++) { if( j == 0 ) continue ; dp[flag][j] = ( a*dp[flag][j-1] + b*dp[1-flag][j] ) / (1.0-p) ; } } printf("%.6lf\n", dp[flag][hp2]); } return 0; }
相关文章推荐
- HDOJ 5375 Gray code DP
- 2012华为机试第三题引发的关于“java传值,传引用”思考
- Leetcode: Binary Search Tree Iterator
- [笔记][Java7并发编程实战手册]系列目录
- SSH常用命令选项
- [程序员面试金典]1002.下一个较大元素
- 算命心理学
- 设计模式08: Composite 组合模式(结构型模式)
- 协同activity
- HDU-2647-邻接表模板
- 8月11日的学习内容
- RxJava系列之一 初识Rxjava
- Python学习笔记2
- Action常用属性
- unable to find vcvarsall.bat的解决方法
- hdu5379 Mahjong tree 树形DP
- LeetCode(199) Binary Tree Right Side View
- Html(5)其他(缓存 及 js控制css)
- C/C++带括号的四则运算
- C语言中的数组名