T2:

最小花费

题目描述

在n个人中,某些人的银行账号之间可以互相转账。这些人之间转账的手续费各不相同。给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问A最少需要多少钱使得转账后B收到100元。

输入格式

第一行输入两个用空格隔开的正整数n和m,分别表示总人数和可以互相转账的人的对数。以下m行每行输入三个用空格隔开的正整数x; y; z,表示标号为x的人和标号为y的人之间互相转账需要扣除z%的手续费(z < 100)。最后一行输入两个用空格隔开的正整数A和B。数据保证A与B之间可以直接或间接地转账。

输出格式

输出A使得B到账100元最少需要的总费用。精确到小数点后8位。
 

样例输入

3 3
1 2 1
2 3 2
1 3 3
1 3

样例输出

103.07153164


题解:
简单的一个spfa问题,直接套用
参考程序:
var     a:array[1..2000,0..2000]of longint;f:array[1..2000,1..2000]of longint;dis:array[1..2000]of real;data:array[1..200000]of longint;bz:array[1..2000]of boolean;x,y,t,n,m,i,j,l,r,t1,t2:longint;
beginassign(input,'money.in');reset(input);assign(output,'money.out');rewrite(output);readln(n,m);fillchar(f,sizeof(f),100);for i:=1 to m dobeginreadln(x,y,t);inc(a[x,0]);a[x,a[x,0]]:=y;f[x,y]:=t;inc(a[y,0]);a[y,a[y,0]]:=x;f[y,x]:=t;end;readln(t1,t2);i:=t1;l:=0;r:=1;data[1]:=i;dis[i]:=100;while l<r dobegininc(l);t:=data[l];for j:=1 to a[t,0] doif dis[t]*((100-f[t,a[t,j]])/100)>dis[a[t,j]] thenbegindis[a[t,j]]:=dis[t]*((100-f[t,a[t,j]])/100);if bz[a[t,j]]=false thenbeginbz[a[t,j]]:=true;inc(r);data[r]:=a[t,j];end;end;bz[t]:=false;end;writeln((100/dis[t2])*100:0:8);close(input);close(output);
end.

OIBH杯第三次普及组模拟赛T2 最小花费相关推荐

  1. 计蒜客信息学3月普及组模拟赛

    A. 断幺九 题目链接 分值:100 时间限制:1000ms 测试点数目:10 B. 锈湖 题目链接 分值:100 时间限制:2000ms 测试点数目:10 C. 图  题目链接 分值:100 时间限 ...

  2. DD 摆磁铁(计蒜客信息学8月普及组模拟赛)

    DD 摆磁铁 这道题来自 计蒜客信息学8月普及组模拟赛 普及组!! 把我一个TG选手看懵了 看来我要回去打普及了 题目大意 给出一个n个节点的树,要把树上给定的2*m个节点两两配对,两个节点配对的产生 ...

  3. 1983. 【普及组模拟赛】手机(mobile)

    1983. [普及组模拟赛]手机(mobile) 题目描述 一般的手机的键盘是这样的: 要按出英文字母就必须要按数字键多下.例如要按出 x 就得按 9 两下,第一下会出 w,而第二下会把 w 变成 x ...

  4. 【计蒜客模拟赛系列】-计蒜客2021年8月普及组模拟赛

    提前:本文中部分代码和思路有借鉴或摘抄计蒜客官方题解 赛后总结 本次模拟赛的难度总算正常了些 个人战绩: 220/400,排名61 ,太弱了,一大堆AK爷 题目质量评价: 题目相比CSP-J还是简单了 ...

  5. 【jzoj】2018.1.30NOIP普及组——模拟赛D组

    @_@ 前言 写博客时间 2018/1/30 22:36. 感想:出数据的dalao我服! 正题 题目1:二项式展开式(jzoj2254) 输入一个整数,求展开(a+b)^n.展开方式为 (a+b)^ ...

  6. 【普及组模拟赛】游戏

    题目描述 Atlantis Island 沉没以前,传说中的猫老大和 King 是好朋友--King 很喜欢赌博,这次 King和老朋友猫老大多年不见, 于是便邀请猫老大来玩一个游戏,猫老大应邀参加了 ...

  7. 【普及组模拟赛】作业

    题目描述 光光上了高中,科目增多了.在长假里,光光的老师们都非常严厉,都给他布置了一定量的作业.假期里,光光一共有的时间是 k 小时.在长假前,老师们一共给光光布置了 n份作业,第 i 份作业需要的时 ...

  8. 【普及组模拟赛】家族

    题目描述 在一个与世隔绝的岛屿上,有一个有趣的现象:同一个家族的人家总是相邻的(这里的相邻是指东南西北四个方向),不同的家族之间总会有河流或是山丘隔绝,但同一个家族的人不一定有相同姓氏.现在给你岛上的 ...

  9. 【普及组模拟赛】手机

    题目描述 一般的手机的键盘是这样的: 要按出英文字母就必须要按数字键多下.例如要按出 x 就得按 9 两下,第一下会出 w,而第二下会把 w 变成 x. 0 键按一下会出一个空格. 你的任务是读取若干 ...

最新文章

  1. [新功能]根据预览图片选择Skin
  2. thinkphp模型中的获取器和修改器(根据字段名自动调用模型中的方法)
  3. python简介怎么写-python简历模板范文
  4. [Security]XSS一直是个棘手的问题
  5. 从ipa文件中导出图片
  6. 【codevs1946】【BZOJ2434】阿狸的打字机,AC自动机练习
  7. 改动Xmodem/Zmodem上传下载路径
  8. Linux 用户打开进程数的调整
  9. 卷积神经网络中的参数计算(转载)
  10. Hive collect、explode函数详解(包括concat、Lateral View)
  11. 蓝牙室内定位技术,蓝牙定位信标应用场景及分析
  12. 注塑模具设计师要懂得的四个概念
  13. Django设置中国时区问题
  14. photoshop基本的操作
  15. linux驱动开发:PWM驱动编写
  16. launcher功能入口(二)
  17. 农村环境保护之平时作业一
  18. Z-Libary最新地址.Z-Libary无法登录解决方案
  19. 建议收藏 | 应用程序无法安装MAC系统或解决的办法
  20. HTML5中table只保留一条边框线

热门文章

  1. Swift java编译速度_Swift的运行效率让我吓尿了
  2. 拱猪java_有没有大神帮忙解决一下这个项目启动报错的问题
  3. Wiznet W5300 FPGA 控制程序
  4. python中math计算平方根的函数_Python求算数平方根和约数的方法汇总
  5. .chm文件打开显示找不到网址
  6. 烧水壶java代码_JAVA代码—算法基础:水壶分水的问题
  7. 概率论与数理统计——参数假设检验
  8. calico的CrashLoopBackOff 解决办法
  9. 〖Python自动化办公篇⑦〗- word文件自动化 - 实操之筛选简历
  10. 【项目】数仓项目(七)