spfa
~无相~
这个作者很懒,什么都没留下…
展开
-
AcWing 1165. 单词环 (边点)
题目 我们有 n 个字符串,每个字符串都是由 a∼z 的小写英文字母组成的。 如果字符串 A 的结尾两个字符刚好与字符串 B 的开头两个字符相匹配,那么我们称 A 与 B 能够相连(注意:A 能与 B 相连不代表 B 能与 A 相连)。 我们希望从给定的字符串中找出一些,使得它们首尾相连形成一个环串(一个串首尾相连也算),我们想要使这个环串的平均长度最大。 如下例: ababc bckjaca caahoynaab 第一个串能与第二个串相连,第二个串能与第三个串相连,第三个串能与第一个串相连,我们按照此顺序原创 2020-09-22 16:58:52 · 163 阅读 · 0 评论 -
AcWing 361. 观光奶牛(二分+点权值变为边权值+判断正环)
思路 题目要求一个环,满足sum(f[i])/sum(l[i])取最大值,f[i]为环上每个点的权值,l[i]为环上每个边的权值,这种一个数除以一个数取最大的,一般用二分,这题变一下形,sum(f[i])/sum(l[i])>=mid,变为sum(f[i])-sum(l[i])*mid>=0,mid为二分的最大值,这样可以把点的权值放在该点的出边上,因为这是在一个环上,所以经过一个点的环,该点的出边必然也在环上,所以可以这么做 之后只要判断一下是否存在正环就可以了,即对于每一个mid判断是否存原创 2020-09-22 13:08:01 · 179 阅读 · 0 评论