积压很久的一道。。。一看直接spfa水过。。但是看那个safest怎么求得?松弛的时候取大。

#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
typedef unsigned long long ULL;
const double eps=1e-5;
const double pi=acos(-1.0);
const int mod=1e9+7;
const int INF=0x3f3f3f3f; #define N 1010 double ma[N][N];
int n;
bool vis[N];
int used[N];
double dis[N];
int que[N*N];
int h,ta; void spfa(int s,int t)
{
h=0;
ta=1;
memset(dis,0,sizeof(dis));
memset(vis,0,sizeof(vis));
dis[s]=1;
vis[s]=1;
que[h]=s;
while(h<ta)
{
int u=que[h++];
vis[u]=0;
for(int i=1;i<=n;i++)
{
if(ma[u][i]==0||u==i)
continue;
if(dis[i]<dis[u]*ma[u][i])
{
dis[i]=dis[u]*ma[u][i];
if(!vis[i])
{
vis[i]=1;
que[ta++]=i;
}
}
}
}
if(dis[t]!=0)
printf("%.3lf\n",dis[t]);
else
puts("What a pity!");
}
int main()
{
while(~scanf("%d",&n))
{
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
scanf("%lf",&ma[i][j]);
}
}
int m;
scanf("%d",&m);
for(int i=0;i<m;i++)
{
int a,b;
scanf("%d%d",&a,&b);
spfa(a,b);
}
}
return 0;
}

最新文章

  1. Discuz!用户注册,登陆,生成帖子功能实现
  2. JS判断是否是IE浏览器
  3. RDIFramework.NET开发实例━表约束条件权限的使用-WinForm
  4. SQLHelper、DBUtil终极封装
  5. 在 Linux 的 KVM虚拟机 上安装 Mac OS 系统的研究总结
  6. rfc 标准文档目录
  7. css笔记15:盒子模型
  8. 【BZOJ2199】 [Usaco2011 Jan]奶牛议会
  9. 《University Calculus》-chape4-极坐标与圆锥曲线-极坐标系下的面积与弧长
  10. 201521123032 《Java程序设计》第11周学习总结
  11. j2e中操作EXCEL
  12. BZOJ 2329: [HNOI2011]括号修复 [splay 括号]
  13. php+redis配置
  14. ORM框架EF
  15. 动态SQL详解
  16. C# DataTable使用方法详解--删除表数据
  17. NBU 还原LINUX ORACLE 数据库(EHR)
  18. MarginTop 为何影响父元素的 MarginTop(转)
  19. 迷宫城堡--hdu1269(连通图)
  20. git 错误error: failed to push some refs to

热门文章

  1. jQuery -&amp;gt; 获取后代元素的三种方法
  2. 为Joomla 2.5的连续插入多幅图像添加便捷方式
  3. windows下使用F2PY编译fortran文件的问题
  4. 在vc6.0下编的对话框界面如果没做过其他处理,往往显的很生硬,怎么样才能使他有Windows XP的风格呢,其实也很简单,我们来看看下面两种方法。
  5. 超低功耗、无需网关,CSR智能家居蓝牙控制照明方案
  6. Duplicate Observed Data
  7. 恢复MySQL数据库删除的数据
  8. Java 8 新的时间日期 API
  9. java.lang.IllegalArgumentException: No converter found for return value of type: class com.st.bean.User
  10. html5--6-6 CSS选择器3