化学1(chem1)- 化学合成
P2784 化学1(chem1)- 化学合成
还是spfa,距离数组初始化为-1,松弛操作改为*就好了,一开始老是超时,后来加了一个visit数组就过了,这个重复造成的效率浪费还是蛮大的,以后都要加。
#include<bits/stdc++.h>
using namespace std; struct node
{
double v;
int n;
node *next;
}*e[]; void push(int x,int y,double z)
{
node *p=new node();
p->n=y;
p->v=z;
if(e[x]==NULL)
{
e[x]=p;
}
else
{
p->next=e[x]->next;
e[x]->next=p;
}
}
int s,t,n,m;
queue<int>q;
double d[];
bool vis[];
void spfa(int x)
{
for(int i=;i<=n;i++)
d[i]=-11111111.0;
d[x]=1.0;
q.push(x);
vis[x]=;
node *p;
while(!q.empty())
{
p=e[q.front()];
while(p!=NULL)
{
if(d[q.front()]*p->v>d[p->n])
{
d[p->n]=d[q.front()]*p->v;
if(!vis[p->n])
{
q.push(p->n);
vis[p->n]=;
}
}
p=p->next;
}
vis[q.front()]=;
q.pop();
}
} void in(int &x)
{
char c=getchar();x=;
while(c<''||c>'')c=getchar();
while(c<=''&&c>='')x=x*+c-'',c=getchar();
} int main()
{
cin>>n>>m>>s>>t;
int x,y;
double z;
for(int i=;i<=m;i++)
{
in(x),in(y);
scanf("%lf",&z);
push(x,y,z);
}
spfa(s);
if(d[t]!=-11111111.0)
printf("%.4f",d[t]);
else
cout<<"orz";
return ;
}
化学1(chem1)- 化学合成的更多相关文章
- 洛谷——P2784 化学1(chem1)- 化学合成
P2784 化学1(chem1)- 化学合成 题目背景 蒟蒻HansBug在化学考场上,挠了无数次的头,可脑子里还是一片空白. 题目描述 眼下出现在蒟蒻HansBug面前的是一个化学合成题,据他所知, ...
- sqlserver 行转列 语文,数学,物理,化学
数据库查询行转列 1.原数据库值 stdname stdsubject result 张三 语文 张三 数学 张三 物理 李四 语文 李四 数学 李四 物理 李四 化学 李四 化学 2.要得到如下表 ...
- BZOJ 3697: 采药人的路径 [点分治] [我想上化学课]
传送门 题意: 路径有$-1,1$两种权值,求有多少路径满足权值和为$0$且有一个点将路径分成权值和为$0$的两段 第四节课本来想去上化学,然后快上课了这道题还没调出来.....可恶我想上化学 昨天两 ...
- 51nod 1483 化学变换 | 二进制 暴力
51nod 1483 化学变换 题面 给出n个整数(n <= 1e5,每个数 <= 1e5),对每个数都可以进行多次操作,操作有两种:乘二/整除以二. 问最少经过多少次操作能使所有数相等. ...
- P4711 「化学」相对分子质量
P4711 「化学」相对分子质量 给你一个字符串让你输出相对分子质量(弱智字符串模拟) 我比赛tm调了两个半小时啊QAQ 希望以后能增加代码力吧,纪念挂代码 Code #include<iost ...
- 如何用MathType编辑化学等式
MathType在数学中应用非常广泛,被大量用于编辑数学公式,MathType不仅可以用来编辑数学公式,还可以编辑化学反应式,那么MathType编辑化学等式怎么操作的呢? 具体操作如下: 1.打开M ...
- 在化学教学中怎么用ChemOffice
在21世纪新课程化学教学中,有很多地方要求化学教师使用计算机和应用程序处理各类化学信息,比如课堂教学.撰写教学论文.制作多媒体课件等,这样可以有效增强教学效果.作为化学教师,在新课程的化学教学中掌握一 ...
- ChemDraw中化学信息怎么通过Excel搜索
用户可以通过ChemDraw for Excel插件功能在Office Excel中建立ChemOffice菜单将ChemOffice和Excel结合使用,使用电子表格的最大优势之一就是可以清晰查看并 ...
- 如何用ChemDraw绘制化学课件
近年来随着ChemDraw等多媒体技术的迅速发展,多媒体技术越来越多的应用在教学中.学会应用ChemDraw绘制化学分子结构.化学反应式和实验装置的方法,将在有机化学的教学中提供一定的帮助,进一步提高 ...
随机推荐
- Responsive响应式设计
在IE6-8中完全是不支持CSS3 Media Queries的.那么为了让IE6-8支持,我们就很有必要的在IE9以下的浏览器中加上media-queries.js或者respond.js脚本: & ...
- SANS社区邮件情报收集【2018-12-4到2019-1-19】
情报来源:注册SANS社区帐号,它提示是否接收邮件咨询等信息,肯定要接收.耳朵听不到东西,天才都变成傻子. 信息点:1.全世界安全员使用它,有培训和免费资源.2.可选择性接收特别网络安全课程,峰会和事 ...
- malloc 函数详解【转】
转自:https://www.cnblogs.com/Commence/p/5785912.html 很多学过C的人对malloc都不是很了解,知道使用malloc要加头文件,知道malloc是分配一 ...
- kset学习demo以及Oops反汇编objdump调试例子【原创】
写一个main.c gcc -c -g main.c objdump -S main.o > b.txt arm-none-linux-gnueabi-gcc -c -g a.c arm-non ...
- [转]VS2015 Git 源码管理工具简单入门
VS2015 Git 源码管理工具简单入门 1.VS Git插件 1.1 环境 VS2015+GitLab 1.2 Git操作过程图解 1.3 常见名词解释 拉取(Pull):将远程版本库合并到本 ...
- jumpserver会话终端故障
查看jumpserver的终端,发现无法访问,情况如下图 页面中提到,需要部署luna,coco和nginx的url分发. 然后进入到jumpserver的服务器,发现nginx启动了,但是没有coc ...
- nagios系列(七)nagios通过自定义脚本的方式监控mysql主从同步
nagios监控mysql主从同步 起因:nagios可能监控到mysql服务的运行情况,但确不能监控mysql的主从复制是否正常:有时候,同步已经停止,但管理人员却不知道. 登陆mysql从服务器, ...
- html dom之iframe对象
当从父页面中需要获取使用iframe嵌入的内容时,可以使用图中后面的两个属性 var sonDocument = document.getElementById('iframe_id').conten ...
- 解读使用Daisy-chain(菊花链)方式筛选一定范围内素数的代码
go version go1.11 windows/amd64 本文为解读 参考链接1 中的 菊花链 一节 的示例程序,此程序和 参考链接2 中代码有些类似:前者有范围,后者是无限循环.清楚了 参考链 ...
- Scala集合笔记
Scala的集合框架类比Java提供了更多的一些方便的api,使得使用scala编程时代码变得非常精简,尤其是在Spark中,很多功能都是由scala的这些api构成的,所以,了解这些方法的使用,将更 ...