摘要:
题目问的是从1到n再回到1边不重复走的最短路,本质是找1到n的两条路径不重复的尽量短的路。 1 #include<cstdio> 2 #include<cstring> 3 #include<queue> 4 #include<algorithm> 5 using namespace std; 6 阅读全文
摘要:
比较形象的是地图每个点都拆成三个点,这三个点限制流量为0或1,于是再一分为二,这样每个点都被拆成6个点。。。 其实拆两个点,连容量为柱子高的边,这样就行了。。 这题我掉坑了,“1 lizard was left behind.”。。虽然样例都把一切都说了。。要注意细节。。 1 #include<cs 阅读全文
摘要:
把入侵者看作边,每一行每一列都是点,选取某一行某一列都有费用,这样问题就是选总权最小的点集覆盖所有边,就是最小点权覆盖。 此外,题目的总花费是所有费用的乘积,这时有个技巧,就是取对数,把乘法变为加法运算,最后再还原。 另外还可以从最小割的思路去这么理解: 每一行与源点相连,容量为该行的花费;每一列与 阅读全文