大致题意:给你n个俄罗斯套娃,告诉你每个套娃内外的半径。问你这里面有多少个集合,可以使得外层不能再套别的套娃而且里面剩余的空间最小。
这题的话想到思路还是不难的,无非是套娃的嵌套关系。如果我们找到所有的嵌套关系,我们可以考虑建立一个有向带权图。对于任意的边<u,v,w>表示第u个套娃可以套第v个套娃而且套了的话中间缝隙为w。如此,我们只需要对于这个带权有向图求一下最短路的条数就是最后的结果。但是,这题点数较多,如果这么建图时间和空间都过不去。
我们来重新考虑一下我们做最短路的过程,最短路松弛的时候本质是维护这样一个方程:
化简一下这个式子可以有: