![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
传递闭包
Mr.Gzj
这个作者很懒,什么都没留下…
展开
-
L - Median ZOJ - 4124(传递闭包)
题意: 每个样例第一行有两个数字n,m表示有1-n个元素,m个关系每一个关系由两个数字a,b组成表示a元素大于b元素,输出n个数字表示1-n个元素可不可能为中位数(可能在它的位置上输出1否则输出0)思路: 感觉这道题有些点要注意,有两种矛盾的情况,第一种是输入u=v时,第二种是存在u>v并且v>u。这种题可以floyd闭包做。中位数就是要判断大于它的数字不能多于一半小于它的数字也...原创 2019-07-14 22:14:26 · 220 阅读 · 0 评论 -
poj3660 Cow Contest(传递闭包)
题意:给出n个数和m个他们的关系,问有多少个能确定它排的位置。思路:一看n在100以内,Floyd传递闭包,然后计算入度出度,若入度出度加起来等于n-1的话,则位置确定。#include<iostream>using namespace std;const int N = 1e2 + 10;int n, m, dis[N][N], in[N], out[N];int ...原创 2019-07-15 20:17:14 · 128 阅读 · 0 评论 -
poj1094 Sorting It All Out(拓扑排序+传递闭包)
题意:给你n个大写字母,m对大小关系,根据他给的关系推测是否有大小矛盾的情况。如果有矛盾的就输出是在第几组关系时矛盾;如果不矛盾,判断只需要前t对组关系就能推测出他们从小到大的排序;如果没有以上两种情况就输入无法确定。思路:对于每输入一对关系就跑一次floyd判断一遍,如果能推测出他们的关系,那么就跑一边拓扑排序求出他们从小打到的排序情况;如果有矛盾的关系就直接输出是在第几组关系时矛盾;如果没...原创 2019-07-15 21:15:12 · 264 阅读 · 0 评论