poj 1189 DP
来源:互联网 发布:eterm放大软件 编辑:程序博客网 时间:2024/05/28 15:07
我觉得有一种情况 网上代码没考虑 但是可以AC poj数据很弱:
5 3
*
* *
* * *
* * * *
. . . . .
这样算出来每个洞里的概率都为0 应该是错的 因为有个方程 dp[i+2][j+1]+=dp[i][j]; 会忽略已经掉到洞里了。
#include<cstdio>#include<cstring>long long gcd(long long a,long long b){return b==0?a:gcd(b,a%b);}long long dp[55][55];int main(){int n,m;char str[60][60],ch;scanf("%d%d",&n,&m);getchar(); for(int i=1;i<=n;i++){int tot=1;while((ch=getchar())!='\n'){if(ch=='*'||ch=='.'){str[i][tot]=ch;tot++;}}}dp[1][1]=1LL<<n;for(int i=1;i<=n;i++){for(int j=1;j<=i;j++){if(str[i][j]=='*'){dp[i+1][j]+=dp[i][j]>>1;dp[i+1][j+1]+=dp[i][j]>>1;}else{if(i==n){ dp[i+1][j+1]+=dp[i][j]>>1; dp[i+1][j]+=dp[i][j]>>1; } else dp[i+2][j+1]+=dp[i][j];}}}long long int res=gcd(1LL<<n,dp[n+1][m+1]);printf("%lld/%lld\n",dp[n+1][m+1]/res,(1LL<<n)/res);return 0;}
0 0
- poj 1189 DP
- poj 1189 DP
- poj 1189 DP
- poj 1189 DP
- poj dp
- 【dp】POJ
- 【dp】POJ
- [DP] POJ
- [DP] POJ
- [DP] POJ
- 【dp】POJ
- POJ 1189 钉子和小球 (DP)
- poj 1189 钉子和小球 DP
- POJ 1189 钉子和小球 [dp]
- POJ 1189 钉子和小球 (DP)
- poj 1189 dp(钉子和小球)
- POJ 1189-钉子和小球(DP)
- POJ 1189 钉子和小球【基础DP】
- java异常处理的throw和throws的区别
- 关键字 ref 和 out 的区别
- gcc的使用
- 自定义上下文对话框
- Linux目录结构和常用命令
- poj 1189 DP
- Qt Coordinate System
- thinkphp框架的路径问题
- Linux学习笔记23 --LDAP网络用户账户
- 把windows里面的文件复制到linux系统中
- 语音信号预处理及特征参数提取
- 图文笔记,带你走进《未来简史》(31-35)
- 达内课程-运算符号
- 通過XML設置屏幕方向(android:screenOrientation)详解