题型:图论
题意:给一些白色边和一些黑色边,问能否构造出一棵生成树,使得其中白色边的个数为斐波纳契数。
分析:
直接找出符合条件的生成树是不现实的,可以这样做:
求出生成树使得白边尽量多,设求出白边最多为Max,
再求出生成树使得白边尽量少,设求出白边最少为Min,
这样,我们可以认为如果在[Min,Max]里存在斐波纳契数,那么符合条件的生成树就是存在的。
因为生成树的边数是固定的,即为n-1,那么拿走一条白边就得加入一条黑边,若存在符合条件的树,那么白边数一定在这个区间里,当然前提是题目给出的图本身就是连通图,否则就没有必要讨论生成树了。
类比Kruskal算法