博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj 3621(最优比率环)
阅读量:6414 次
发布时间:2019-06-23

本文共 512 字,大约阅读时间需要 1 分钟。

题目链接:

思路:之前做过最小比率生成树,也是属于0/1整数划分问题,这次碰到这道最优比率环,很是熟悉,可惜精度没控制好,要不就是wa,要不就是tle,郁闷啊!实在是懒得码字,直接copy吧:

题目的意思是:求一个环的{点权和}除以{边权和},使得那个环在所有环中{点权和}除以{边权和}最大。

令在一个环里,点权为v[i],对应的边权为e[i],
即要求:∑(i=1,n)v[i]/∑(i=1,n)e[i]最大的环(n为环的点数),
设题目答案为ans,
即对于所有的环都有 ∑(i=1,n)(v[i])/∑(i=1,n)(e[i])<=ans
变形得ans* ∑(i=1,n)(e[i])>=∑(i=1,n)(v[i])
再得 ∑(i=1,n)(ans*e[i]-v[i]) >=0
稍分析一下,就有:
当k<ans时,就存在至少一个环∑(i=1,n)(k*e[i]-v[i])<0,即有负权回路(边权为k*e[i]-v[i]);
当k>=ans时,就对于所有的环∑(i=1,n)(k*e[i]-v[i])>=0,即没有负权回路。
然后我们就可以使新的边权为k*e[i]-v[i],用spfa来判断付权回路,二分ans。

 

转载地址:http://tebra.baihongyu.com/

你可能感兴趣的文章
第三周作业
查看>>
对象.原型链,函数.原型对象
查看>>
动态 K th
查看>>
MVC 中引入Jquery文件的几种方法
查看>>
servlet容器开发要点
查看>>
Idea debugger 无法启动-unable to open debugger port , java.net.SocketException "socket closed"
查看>>
100c之54: 说谎族,诚实族和两面族
查看>>
[转载]使用Cufon技术实现Web自定义字体
查看>>
c#获取电脑硬件信息参数说明( Win32_PhysicalMedia )
查看>>
9.Java通过axis调用WebService
查看>>
7. Spring Boot 启动加载数据 CommandLineRunner
查看>>
请问两个div之间的上下距离怎么设置
查看>>
java 使用反射
查看>>
20181204-2 Final发布
查看>>
性能测试初学_loadrunner脚本增强
查看>>
办公室局域网访问共享文件夹
查看>>
SVN学习笔记
查看>>
几种PCB软件
查看>>
51nod1160 压缩算法的矩阵——一道有趣的题
查看>>
python基础:os模块中关于文件/目录常用的函数使用方法
查看>>