D. Determine Winning Islands in Race
思路:
bfs找到E到达每个点的最短时间t[i]。
如果E要超过B,那么一定要借助辅助桥,从而获胜。
假设有u->v的辅助桥,E能通过这个桥超过B的条件是:
s>u 且 t[v] < v-s
即 s的取值要为[u+1,v-t[v]-1]
遍历每个辅助桥,找到使E能够获胜的s区间[l,r],用差分数组来保存。最后E获胜输出0,否则输出1即可。
代码:
bfs找到E到达每个点的最短时间t[i]。
如果E要超过B,那么一定要借助辅助桥,从而获胜。
假设有u->v的辅助桥,E能通过这个桥超过B的条件是:
s>u 且 t[v] < v-s
即 s的取值要为[u+1,v-t[v]-1]
遍历每个辅助桥,找到使E能够获胜的s区间[l,r],用差分数组来保存。最后E获胜输出0,否则输出1即可。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2165807.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!