ZOJ3822 ACM-ICPC 2014 亚洲区域赛牡丹江赛区现场赛D题Domination 概率DP(两种解法)
2014-11-25 18:56
537 查看
题目地址:点击打开链接
这道题有两种做法,第一种是直接求期望,类似于poj 2096 区别在于这个步数有限。所以要迭代步数。
第二种是求概率,完事以后再算期望。(若是对于不限步数的题目来说这个方法是不能用的)
这道题有两种做法,第一种是直接求期望,类似于poj 2096 区别在于这个步数有限。所以要迭代步数。
#include <cstdio> #include <cstring> #include <iostream> #define maxn 55//这里刚开始写成了50+10 那么maxn*maxn就会小很多wa了一次 using namespace std; double dp[maxn][maxn][maxn*maxn]; int N,M,T; int main() { while(~scanf("%d", &T))while(T--) { scanf("%d%d",&N,&M); memset(dp,0,sizeof(dp)); for(int i=N;i>=0;i--) for(int j=M;j>=0;j--) { if(i==N && j==M) continue;//状态定义:dp[i][j][k] 走了k步覆盖了i行j列,此情况下能完全覆盖的期望 for(int k=i*j;k>=max(i,j);k--)//步数不可能比i*j更多也要大于i,j中最大值因为已经覆盖了这么些 { double p0=1.0*(i*j-k)/(N*M-k); double p1=1.0*(M-j)*i/(N*M-k); double p2=1.0*(N-i)*j/(N*M-k); double p3=1.0*(N-i)*(M-j)/(N*M-k); dp[i][j][k]=dp[i][j][k+1]*p0+dp[i][j+1][k+1]*p1+dp[i+1][j][k+1]*p2+dp[i+1][j+1][k+1]*p3+1; } } printf("%.12lf\n",dp[0][0][0]); } return 0; }
第二种是求概率,完事以后再算期望。(若是对于不限步数的题目来说这个方法是不能用的)
#include<cstdio> #include<iostream> #include<cstring> #include<algorithm> using namespace std; double dp[55][55][55*55]; const double eps=1e-8; int main() { // freopen("in.txt","r",stdin); int t; cin>>t; while(t--) { int n,m; scanf("%d%d",&n,&m); memset(dp,0,sizeof(dp)); memset(a,0,sizeof(a)); dp[1][1][1]=1; for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { if(i==n && j==m) break; for(int k=max(i,j);k<=i*j;k++) { dp[i][j][k+1]+=dp[i][j][k]*(i*j-k)/(n*m-k); dp[i+1][j][k+1]+=dp[i][j][k]*(n-i)*j/(n*m-k); dp[i][j+1][k+1]+=dp[i][j][k]*(m-j)*i/(n*m-k); dp[i+1][j+1][k+1]+=dp[i][j][k]*(n-i)*(m-j)/(n*m-k); } } } double sum=0; for(int i=max(n,m);i<=n*m;i++) sum+=dp [m][i]*i; printf("%.12f\n",sum); } return 0; }
相关文章推荐
- ZOJ3822 ACM-ICPC 2014 亚洲区域赛牡丹江赛区现场赛D题Domination 概率DP
- ZOJ3822 ACM-ICPC 2014 亚洲杯赛事现场牡丹江司D称号Domination 可能性DP
- ZOJ 3822 Domination 概率DP 2014年ACM_ICPC亚洲区域赛牡丹江现场赛D题
- ZOJ3829 ACM-ICPC 2014 亚洲区域赛牡丹江赛区现场赛K题 Known Notation 贪心
- HDU5078 2014 ACM-ICPC亚洲区域赛鞍山赛区现场赛I题 Osu! 签到题
- ZOJ3819 ACM-ICPC 2014 亚洲区域赛的比赛现场牡丹江司A称号 Average Score 注册标题
- zoj3822 Domination 概率dp --- 2014 ACM-ICPC Asia Mudanjiang Regional Contest
- 2014ACM/ICPC亚洲区域赛牡丹江现场赛总结
- ZOJ3819 ACM-ICPC 2014 亚洲区域赛牡丹江赛区现场赛A题 Average Score 签到题
- 2014ACM/ICPC亚洲区域赛牡丹江现场赛总结
- ZOJ3827 ACM-ICPC 2014 亚洲区域赛牡丹江现场赛I题 Information Entropy 水题
- HDU5074 ACM-ICPC亚洲区域赛鞍山赛区现场赛E题 Hatsune Miku 二维DP
- ZOJ 3822 Domination The 2014 ACM-ICPC 牡丹江区域赛 概率dp 先算概率,再转成期望
- ZOJ3827 ACM-ICPC 2014 亚洲区域赛的比赛现场牡丹江I称号 Information Entropy 水的问题
- 2014ACM/ICPC亚洲区域赛牡丹江站现场赛-A ( ZOJ 3819 ) Average Score
- zoj3822 Domination 2014亚洲区域赛牡丹江站
- 2014ACM/ICPC亚洲区域赛牡丹江站现场赛-D ( ZOJ 3822 ) Domonation
- 2014ACM/ICPC亚洲区域赛现场赛D和K题解题报告
- 2014ACM/ICPC亚洲区域赛牡丹江站现场赛-K ( ZOJ 3829 ) Known Notation
- zoj3822 Domination 牡丹江现场赛D题 概率DP