【BZOJ1415】【Noi2005】聪聪和可可 概率DP 记忆化搜索
来源:互联网 发布:男生基本款帽子 知乎 编辑:程序博客网 时间:2024/05/21 18:40
链接:
#include <stdio.h>int main(){ puts("转载请注明出处[辗转山河弋流歌 by 空灰冰魂]谢谢"); puts("网址:blog.csdn.net/vmurder/article/details/46457811");}
题解:
记忆化搜索、
然后显然它是拓扑的,然后先枚举起点n遍bfs算出
代码:
#include <queue>#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#define N 1010#define inf 0x3f3f3f3fusing namespace std;struct Eli{ int v,n;}e[N*3];int head[N],cnt;inline void add(int u,int v){ e[++cnt].v=v; e[cnt].n=head[u]; head[u]=cnt;}int map[N][N];int to[N][N];int n,m,s,t;double f[N][N];bool vis[N][N];double F(int x,int y){ if(vis[x][y])return f[x][y];vis[x][y]=1; if(map[x][y]==0)return f[x][y]=0.0; if(map[x][y]<=2)return f[x][y]=1.0; double val=0.0; int cnt=0,i=head[y],v; for(;i;i=e[i].n,cnt++) val+=F(to[to[x][y]][y],e[i].v); return f[x][y]=val/cnt+1.0;}queue<int>q;void bfs(int s){ q.push(s),map[s][s]=0; int i,u,v; while(!q.empty()) { u=q.front(),q.pop(); for(i=head[u];i;i=e[i].n) { if(map[s][v=e[i].v]==-1) { map[s][v]=map[s][u]+1; q.push(v); } } }}void getmap(){ int i,j,k; int a,b,mx; scanf("%d%d%d%d",&n,&m,&s,&t); while(m--) { scanf("%d%d",&a,&b); add(a,b),add(b,a); } memset(map,-1,sizeof map); for(k=1;k<=n;k++) { bfs(k); for(j=1;j<=n;j++)if(j!=k) { mx=inf; for(i=head[j];i;i=e[i].n) { if(mx>map[k][e[i].v]) { mx=map[k][e[i].v]; to[j][k]=e[i].v; } else if(mx==map[k][e[i].v]) to[j][k]=min(to[j][k],e[i].v); } } } for(i=1;i<=n;i++)add(i,i);}int main(){ getmap(); printf("%.3lf\n",F(s,t)); return 0;}
0 0
- 【BZOJ1415】【Noi2005】聪聪和可可 概率DP 记忆化搜索
- bzoj1415: [Noi2005]聪聪和可可 记忆化搜索
- [bzoj1415][Noi2005]聪聪和可可 期望DP+记忆化搜索 & bzoj100题
- 【BZOJ1415】】聪聪和可可 记忆化搜索的概率dp
- BZOJ 1415: [Noi2005]聪聪和可可 概率DP,记忆化搜索,BFS
- [BZOJ1415][NOI2005]聪聪和可可-概率与期望
- bzoj1415 [Noi2005]聪聪和可可 (概率与期望)
- bzoj1415 [Noi2005]聪聪和可可(期望概率DP+最短路)
- 【bzoj1415】【聪聪和可可】期望dp(记忆化搜索)+最短路
- BZOJ1415 [Noi2005]聪聪和可可
- bzoj1415【NOI2005】聪聪和可可
- BZOJ1415: [Noi2005]聪聪和可可
- BZOJ1415: [Noi2005]聪聪和可可
- 【NOI2005】bzoj1415 聪聪和可可
- bzoj1415: [Noi2005]聪聪和可可
- [NOI2005]BZOJ1415 聪聪和可可
- 1415: [Noi2005]聪聪和可可 概率与期望 记忆化搜索
- BZOJ 1415 NOI2005 聪聪和可可 期望DP+记忆化搜索 BZOJ200题达成&&NOI2005全AC达成
- 安装python游戏图形框架pygame
- IOS应用提交所需的ICON
- 键盘缓存与安全键盘
- iOS域名解析
- c++中try catch的用法
- 【BZOJ1415】【Noi2005】聪聪和可可 概率DP 记忆化搜索
- 代理服务器-VPN-DNS
- 统计数字出现个数
- iOS工程中的info.plist文件的完整研究
- 测试庖丁解牛分词工具
- secureCRT The remote system refused the connection.
- android平台ssl单双向验证
- 如何搭建自己CDN服务器
- Eclipse下使用git和github