Description 动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。有人用两种说法对这N个动物所构成的食物链关系进行描述:第一种说法是"1 X Y",表示X和 ...
分类:
其他好文 时间:
2020-04-07 16:56:28
阅读次数:
63
关于拓扑排序,基础图论中可以说是比较常见的题型,对于一些存在明显递推顺序的图论题目例如食物链计数,对于每一个结点存在一个明显的递推$f[k] = \sum(f[i])$ $f[i]$为与它连边,并且从图形上说在它上面的点的方案数,我们肯定不能直接去利用它“上面的点”的方案数,这时候我们需要一定的顺序 ...
分类:
编程语言 时间:
2020-04-06 19:03:00
阅读次数:
62
题目链接:http://icpc.njust.edu.cn/Problem/Pku/1182/ 题意:给出动物之间的关系,有几种询问方式,问是真话还是假话。 定义三种偏移关系: x->y 偏移量0时 x和y同类 x->y 偏移量1时 x被y吃 x->y 偏移量2时 x吃y 定义 rela[x]=rx ...
分类:
其他好文 时间:
2020-03-25 01:06:48
阅读次数:
66
# 题意 有三类动物A,B,C,这三类动物的食物链构成环形。 A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。 每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。 有人用两种说法对这N个动物所构成的食物链关系进行描述: 第一种说法是”1 X Y”,表示X和Y是同类。 第二种说法 ...
分类:
其他好文 时间:
2020-03-09 22:44:00
阅读次数:
62
某国的足球联赛中有N支参赛球队,编号从1至N。联赛采用主客场双循环赛制,参赛球队两两之间在双方主场各赛一场。 联赛战罢,结果已经尘埃落定。此时,联赛主席突发奇想,希望从中找出一条包含所有球队的“食物链”,来说明联赛的精彩程度。“食物链”为一个1至N的排列{ T?1?? T?2?? ? T?N?? } ...
分类:
其他好文 时间:
2020-02-28 14:05:45
阅读次数:
77
分析: 本题最重要的是通过向量的想法来解决这一类关系,这样思维难度大大降低,首先我们明白一点 根据传递性的定义(也就是离散数学中的传递性),x->y =x->z+z>y 我们要知道的一点是,并查集中的题目都是有传递性的,而传递性的题目并不一定能通过并查集解决 我们知道我们要将两个不同的集合合并,就是 ...
分类:
其他好文 时间:
2020-02-25 12:33:11
阅读次数:
65
题意:给你一个食物网,求出食物链条数 题解:1.设f(i)是以i为终点的食物链条数(这里的食物链不一定是完整的)2.在建立食物网的过程中,对每个物种,记录捕食它的物种数和它捕食的物种数,记为in(i)和out(i),3.找到in(i)为0的生物,把它们扔进队列,初始化f[i]=14.把队列里第一种生 ...
分类:
编程语言 时间:
2020-02-22 00:03:29
阅读次数:
116
最近带权并查集这块比较薄弱,直接看食物链看不懂,就老实一步步来了。 有一个划分为N列的星际战场,各列依次编号为1,2,…,N。 有N艘战舰,也依次编号为1,2,…,N,其中第i号战舰处于第i列。 有T条指令,每条指令格式为以下两种之一: 1、M i j,表示让第i号战舰所在列的全部战舰保持原有顺序, ...
总结一下我理解的带权并查集 与普通并查集的区别:普通的并查集仅仅记录的是集合的关系,这个关系无非是同属一个集合或者是不在一个集合,而带权并查集是记录集合内元素的关系,而这个关系被带上了一个权值表示集合内元素之间关系的区别,例如食物链这道题,权值为0表示和根节点是同类,权值为1表示吃根节点。。。 用向 ...
分类:
其他好文 时间:
2020-02-10 22:11:12
阅读次数:
87
并查集是常见而且好用的一种数据结构。原因在于代码简练而且方便维护各种额外信息。带权并查集就是并查集的一种应用方式。原理其实就是普通并查集额外维护了一个结点的权数组。 例题: 本题的关系有三层 -> a -> b -> c -> ,但不同的是本题的关系是有向的,也就是说a和b如果是敌对关系,那么b和a ...
分类:
其他好文 时间:
2020-02-08 16:01:11
阅读次数:
248