LOL新英雄皮肤弹丸天使点击就送

两种做法:

1.边的权值为手续费z,从b向a跑最短路,边跑边处理答案

2.边的权值为汇率,从a向b跑最短路,边跑边处理答案

#include<cstdio>
#include<iostream>
#include<queue>
using namespace std;
queue<double>q;
double path[],n,m,z,dis[],vis[];
int x,y,A,B,k;
struct node{
int u,v,nxt;
double w;
}edge[];
void add(int xx,int yy,double zz)
{
edge[++k].u =xx;
edge[k].v =yy;
edge[k].w =-zz/;
edge[k].nxt =path[xx];
path[xx]=k;
}
int main()
{
scanf("%lf%lf",&n,&m);
for(int i=;i<=m;++i)
{
scanf("%d%d%lf",&x,&y,&z);
add(y,x,z);add(x,y,z);
}
scanf("%d%d",&A,&B);
for(int i=;i<=n;++i)
dis[i]=0x3fff;
dis[B]=;vis[B]=;
q.push(B);
while(!q.empty())
{
int now=q.front() ;
q.pop() ;
vis[now]=; for(int i=path[now];i;i=edge[i].nxt )
{
if(dis[edge[i].v]>dis[edge[i].u]/edge[i].w)
{
dis[edge[i].v]=dis[edge[i].u]/edge[i].w;
if(!vis[edge[i].v])
{
q.push(edge[i].v );
vis[edge[i].v]=;
}
}
}
}
printf("%.8lf",dis[A]);
return ;
}

做法1

#include<iostream>
#include<cstdio>
#include<queue>
#include<cstring>
using namespace std;
const int N=,M=1e6;
struct node{
int u,v,nxt;
double w;
}e[M<<];
int n,m,num,s,t,head[N];
double dis[N];
bool vis[N];
queue<int>q;
int qread()
{
int x=;
char ch=getchar();
while(ch<'' || ch>'')ch=getchar();
while(ch>='' && ch<=''){x=x*+ch-'';ch=getchar();}
return x;
}
void Add(int u,int v,int w)
{
e[++num].u=u;
e[num].v=v;
e[num].w=1.0-w/100.0;
e[num].nxt=head[u];
head[u]=num;
}
void SPFA()
{
for(int i=;i<=n;++i)
dis[i]=100000.0;
dis[t]=;vis[t]=;
q.push(t);
int u,v;
while(!q.empty())
{
u=q.front();q.pop();
vis[u]=;
for(int i=head[u];i;i=e[i].nxt)
{
v=e[i].v;
if(dis[v]>dis[u]/e[i].w)
{
dis[v]=dis[u]/e[i].w;
if(!vis[v])
{
vis[v]=;
q.push(v);
}
}
}
}
}
int main()
{
scanf("%d%d",&n,&m);
int u,v,w;
for(int i=;i<=m;i++)
{
u=qread();v=qread();w=qread();
Add(u,v,w);
Add(v,u,w);
}
scanf("%d%d",&s,&t);
SPFA();
printf("%.8lf\n",dis[s]);
return ;
}

做法2

luoguP1576 最小花费的更多相关文章

  1. 把一个序列转换成严格递增序列的最小花费 CF E - Sonya and Problem Wihtout a Legend

    //把一个序列转换成严格递增序列的最小花费 CF E - Sonya and Problem Wihtout a Legend //dp[i][j]:把第i个数转成第j小的数,最小花费 //此题与po ...

  2. 把一个序列转换成非严格递增序列的最小花费 POJ 3666

    //把一个序列转换成非严格递增序列的最小花费 POJ 3666 //dp[i][j]:把第i个数转成第j小的数,最小花费 #include <iostream> #include < ...

  3. 第四届CCF软件能力认证(CSP2015) 第五题(最小花费)题解

    [问题描述] C国共有$n$个城市.有$n-1$条双向道路,每条道路连接两个城市,任意两个城市之间能互相到达.小R来到C国旅行,他共规划了$m$条旅行的路线, 第$i$条旅行路线的起点是$s_i$,终 ...

  4. 九度OJ 1086 最小花费--动态规划

    题目地址:http://ac.jobdu.com/problem.php?pid=1086 题目描述: 在某条线路上有N个火车站,有三种距离的路程,L1,L2,L3,对应的价格为C1,C2,C3.其对 ...

  5. hdoj 3072 Intelligence System【求scc&&缩点】【求连通所有scc的最小花费】

    Intelligence System Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...

  6. ccf 201503-5 最小花费 这题交上去只有10分嗨!求大佬的题解啊

    问题描述 C国共有n个城市.有n-1条双向道路,每条道路连接两个城市,任意两个城市之间能互相到达.小R来到C国旅行,他共规划了m条旅行的路线,第i条旅行路线的起点是si,终点是ti.在旅行过程中,小R ...

  7. [LeetCode] Minimum Cost to Merge Stones 混合石子的最小花费

    There are N piles of stones arranged in a row.  The i-th pile has stones[i] stones. A move consists ...

  8. 1344:【例4-4】最小花费 dijkstra

    1344:[例4-4]最小花费 Dijkstra (1)a [ i ] [ j ] 存转账率(..转后所得率..) (2)dis [ i ] 也就是 a [ 起点 ] [ i ] (3)f [ i ] ...

  9. PTA 7-1 畅通工程之局部最小花费问题(35 分)

    7-1 畅通工程之局部最小花费问题(35 分) 某地区经过对城镇交通状况的调查,得到现有城镇间快速道路的统计数据,并提出“畅通工程”的目标:使整个地区任何两个城镇间都可以实现快速交通(但不一定有直接的 ...

随机推荐

  1. React+SpringBoot项目部署

    静态资源访问配置 https://www.jianshu.com/p/b6e0a0df32ec https://segmentfault.com/q/1010000012240531/a-102000 ...

  2. 如何在Mybatis的xml文件调用java类的方法

    在mybatis的映射xml文件调用java类的方法:使用的是OGNL表达式,表达式格式为:${@prefix@methodName(传递参数名称)} 1.如下代码所示:方法必须为静态方法:以下我只是 ...

  3. np.newaxis的使用及有趣的数组相乘

    a=np.array([1,2,3,4])a=a[np.newaxis,:] #固定行,相当于1行多列b=np.array([2,4,6]) b=b[:,np.newaxis] #固定列,相当与多行1 ...

  4. CSS揭秘(引言)

    1.标准的制定过程 a 人员结构:W3C会员公司的成员.特邀专家.W3C工作人员 b 尽管“CSS3”非常流行,但它实际上并没有在任何规范中定义过.它实际上是指一个非正式的集合,包括CSS规范第三版再 ...

  5. springCloud学习笔记2(服务发现)

    本篇代码存放于:https://github.com/FleyX/demo-project/tree/master/springcloud/spring-cloud%E6%9C%8D%E5%8A%A1 ...

  6. 《区块链DAPP开发入门、代码实现、场景应用》笔记2——Solidity实现简单的智能合约

    本节仅以一个简单的智能合约示例,介绍智能合约的基本组成元素,本合约定义一个uint类型的变量,以及对应这个变量的读写函数. 01 pragma solidity >=0.4.0 <0.6. ...

  7. Html-元素类型笔记

    注意点: 元素类型分为 块级元素 和 行内元素 块级元素: 在网页中以块的形式显示,默认情况都会占据一行,两个相邻的块级元素不会出现并列显示的元素,按照顺序自上而下排列. 块级元素可以定义自己的宽度和 ...

  8. 单词dyamaund钻石dyamaund英语

    dyamaund  英文词汇,中文翻译为金刚石的;镶钻;用钻石装饰 中文名:镶钻;钻石装饰 外文名:dyamaund 目录 释义 dyamaund 读音:[?da??m?nd, ?da?m?nd] ...

  9. MongoDB 目录分析、基础命令、参数设置

    目录分析 1.整体目录 以msi默认的data.log路径安装,才会有data.log文件夹. 2.bin目录 3.log目录 基础命令 1.服务器端基础命令 net  start  MongoDB  ...

  10. 一些常用的 Emoji 符号(可直接复制)

    表情类