思路和BZOJ 博物馆很像。

同样是高斯消元

#include <map>
#include <ctime>
#include <cmath>
#include <queue>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
#define F(i,j,k) for (int i=j;i<=k;++i)
#define D(i,j,k) for (int i=j;i>=k;--i)
#define maxn 100005
#define eps 1e-9 double a[350][350];
double ans[350];
int n,m,p,q;
int h[maxn],to[maxn],ne[maxn],en=0,du[maxn];void add(int a,int b)
{to[en]=b;ne[en]=h[a];h[a]=en++;du[a]++;}void Gauss()
{F(i,1,n){int tmp=i;F(j,i+1,n) if (fabs(a[tmp][i])<fabs(a[j][i])) tmp=j;if (tmp!=i) F(j,i,n+1) swap(a[tmp][j],a[i][j]);F(j,i+1,n) if (j!=i){double t=a[j][i]/a[i][i];F(k,i,n+1) a[j][k]-=t*a[i][k];}}D(i,n,1){F(j,i+1,n)a[i][n+1]-=a[i][j]*ans[j];ans[i]=a[i][n+1]/a[i][i];}
}int main()
{scanf("%d%d%d%d",&n,&m,&p,&q);a[1][n+1]=1.0*p/q;F(i,1,m){int x,y;scanf("%d%d",&x,&y);du[x]++;du[y]++;a[x][y]+=1.0; a[y][x]+=1.0;}F(i,1,n) F(j,1,n) if (du[j]) a[i][j]/=(double)du[j];F(i,1,n) F(j,1,n) a[i][j]*=1.0*p/q-1;F(i,1,n) a[i][i]+=1;Gauss();F(i,1,n) printf("%.9f\n",ans[i]);
}

  

转载于:https://www.cnblogs.com/SfailSth/p/6669920.html

BZOJ 1778 [Usaco2010 Hol]Dotp 驱逐猪猡 ——期望DP相关推荐

  1. BZOJ 1778 Usaco2010 Hol Dotp 驱逐猪猡 期望DP+高斯消元

    题目大意:给定一个无向图,炸弹从1号节点出发,每个时刻有P/Q的概率爆炸,如果某个时刻没有爆炸,就会等概率沿着随机一条出边走到下一个城市,求最终每个城市的爆炸概率 #include <cmath ...

  2. bzoj 1778: [Usaco2010 Hol]Dotp 驱逐猪猡【dp+高斯消元】

    算是比较经典的高斯消元应用了 设f[i]为i点答案,那么dp转移为f[u]=Σf[v]*(1-p/q)/d[v],意思是在u点爆炸可以从与u相连的v点转移过来 然后因为所有f都是未知数,高斯消元即可( ...

  3. [BZOJ 1778][Usaco2010 Hol]Dotp 驱逐猪猡

    1778: [Usaco2010 Hol]Dotp 驱逐猪猡 Time Limit: 10 Sec  Memory Limit: 64 MB Submit: 690  Solved: 269 [Sub ...

  4. BZOJ 1778: [Usaco2010 Hol]Dotp 驱逐猪猡 [高斯消元 概率DP]

    1778: [Usaco2010 Hol]Dotp 驱逐猪猡 题意:一个炸弹从1出发p/q的概率爆炸,否则等概率走向相邻的点.求在每个点爆炸的概率 高斯消元求不爆炸到达每个点的概率,然后在一个点爆炸就 ...

  5. 【BZOJ1778】[Usaco2010 Hol]Dotp 驱逐猪猡 期望DP+高斯消元

    [BZOJ1778][Usaco2010 Hol]Dotp 驱逐猪猡 Description 奶牛们建立了一个随机化的臭气炸弹来驱逐猪猡.猪猡的文明包含1到N (2 <= N <= 300 ...

  6. bzoj 1778: [Usaco2010 Hol]Dotp 驱逐猪猡

    Description 奶牛们建立了一个随机化的臭气炸弹来驱逐猪猡.猪猡的文明包含1到N (2 <= N <= 300)一共N个猪城.这些城市由M (1 <= M <= 44, ...

  7. BZOJ 1778 [Usaco2010 Hol] Dotp 驱逐猪猡

    Description 奶牛们建立了一个随机化的臭气炸弹来驱逐猪猡.猪猡的文明包含1到N (2 <= N <= 300)一共N个猪城.这些城市由M (1 <= M <= 44, ...

  8. bzoj 1778 [Usaco2010 Hol]Dotp 驱逐猪猡

    http://www.elijahqi.win/archives/3299 Description 奶牛们建立了一个随机化的臭气炸弹来驱逐猪猡.猪猡的文明包含1到N (2 <= N <= ...

  9. BZOJ 1778: [Usaco2010 Hol]Dotp 驱逐猪猡 概率与期望+高斯消元

    这个还挺友好的,自己相对轻松能想出来~ 令 $f[i]$ 表示起点到点 $i$ 的期望次数,则 $ans[i]=f[i]\times \frac{p}{q}$ #include <cmath&g ...

最新文章

  1. 习题4-11 兔子繁衍问题 (15 分)
  2. [shiro] - 怎样使用shiro?
  3. 谷歌系列 :Inception v1到v4
  4. DataFormatString={0:格式字符串} 用法
  5. nonzero的用法一则例子
  6. webgl 游戏_如何选择 WebGL 框架和引擎?
  7. Java 8 函数式编程学习笔记
  8. 私有云中Kubernetes Cluster HA方案
  9. 21天jenkins打卡前置准备:linux环境
  10. SQL查询分析器SQL语句导入TXT文件
  11. 记忆网络之Dynamic Memory Networks模型介绍及代码实现
  12. 利用手机传感器测量高度
  13. 惠普HP LaserJet Pro M104a 打印机驱动
  14. 前端之HTML学习笔记一(B站黑马程序员)
  15. RGB颜色转换为16进制颜色
  16. Poi读取大数据量Excel文件
  17. 平安好医生遭遇困局:六年亏近47亿元 价值百亿品牌或被舍弃
  18. 十天学会php第五天
  19. 虽然惊天地,但不是人人都会哭泣 ——再论Kubernetes惊天地泣鬼神之大Bug
  20. 多介质过滤器详细操作说明

热门文章

  1. Lodop 打印控件的使用
  2. To Be Better ——《人生十二法则》观后感
  3. 多种可以反手“调戏”面试官的方案
  4. openwrt中openconnect的配置
  5. 数据库期末复习资料 (超全的名词解释和简答题)
  6. 【摸鱼系列】3万张4K壁纸还不够你换的吗?python还可以实现更多采集可能
  7. 第 01 篇 和数据打交道的你,一定要学会 SQL
  8. Java、JSP敬老院运营管理系统
  9. excel同时冻结行和列
  10. 生活哲学:创意的想法或点子总是在不经意的时候闪现,我是不是随身带便签纸?