floyd
make_it_for_good
这个作者很懒,什么都没留下…
展开
-
bzoj 1027 [JSOI2007]合金 计算几何+floyd
由于前两维确定第三维也确定,所以只需要考虑前两维。将一个合金看成平面上的点,那么一些合金能表示出另一个合金当且仅当另一个合金的点在这些合金形成的凸包内部。枚举两个给出的合金i,ji,j。如果所有的需要的合金都在射线i−>ji->j 的左边那么从 ii 到 jj 连一条边。floyd求一下最小环就是答案。注意一些细节问题。#include <bits/stdc++.h> using namespace原创 2016-08-31 17:15:52 · 310 阅读 · 0 评论 -
bzoj 2788 [Poi2012]Festival tarjan+floyd+差分约束
先把这个东西建成差分约束。 跑一遍floyd,如果有负环一定无解。 用tarjan缩点,由于缩完点是一个拓扑图,所以每个强连通分量中的取值是互不影响的(因为可以把拓扑序大的强连通分量中的值无限减少)。所以可以将每个强连通分量的答案相加。然后对于一个强连通分量的答案是这个强连通分量中的点两两之间最长路的最大值+1。 因为所有权值都是0,1,-1,因此从最小值到最大值的所有值都会取到。由于从最小值原创 2016-11-14 11:14:47 · 442 阅读 · 0 评论