摘要: d[i]表示消灭i所需的最小体力值, d[i] = min(S[i], K[i]+Σd[x]), Σd[x]表示普通攻击而产生的其他怪兽. 因为不是DAG, 所以用个队列类似SPFA来更新答案.--------------------------------------#include<cstdio 阅读全文
posted @ 2016-02-03 14:25 JSZX11556 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 二分答案, 然后对于答案m, 把地点分成m层, 对于边(u, v), 第x层的u -> 第x+1层的v 连边. 然后第x层的u -> 第x+1层的u连边(+oo), S->第一层的1(PEOPLE_NUMBER), 每一层N -> T(+oo), 假如最大流是等于人数,就是可行答案. ------- 阅读全文
posted @ 2016-02-03 12:40 JSZX11556 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 先跑出最短路的图, 然后对于每个点按照序号从小到大访问孩子, 就可以搞出符合题目的树了. 然后就是经典的点分治做法了. 时间复杂度O(M log N + N log N)----------------------------------------------------------------- 阅读全文
posted @ 2016-02-03 10:27 JSZX11556 阅读(461) 评论(0) 推荐(0) 编辑