D. Determine Winning Islands in Race (cf div2,dp、图论最短路)

D. Determine Winning Islands in Race

思路:

bfs找到E到达每个点的最短时间ti

如果E要超过B,那么一定要借助辅助桥,从而获胜。

假设有u->v的辅助桥,E能通过这个桥超过B的条件是:

s>u 且 tv < v-s

即 s的取值要为u+1,v-t\[v-1]

遍历每个辅助桥,找到使E能够获胜的s区间l,r,用差分数组来保存。最后E获胜输出0,否则输出1即可。

代码:
cpp 复制代码
相关推荐
半个落月1 小时前
从递归到快速排序:用 JavaScript 把分治思想讲明白
javascript·算法·面试
小月土星2 小时前
JavaScript 快速排序:从 pivot、双指针到分治思想
javascript·算法·面试
小月土星2 小时前
JavaScript 递归入门:从 1 到 n 求和,再到数组扁平化
javascript·算法·面试
To_OC17 小时前
LC 1 两数之和:面试第一道必考题,暴力解法直接被面试官 pass
javascript·算法·leetcode
鱼鱼不愚与1 天前
《原来如此 | 第01期:为什么导航软件能预测红绿灯倒计时?》
算法
博客18001 天前
酷宝的使用方法,超好用的免费界面库,C++、MFC可用
c++·mfc·界面库·库来帮·酷宝
郝学胜_神的一滴1 天前
CMake 026:属性体系精讲、四大作用域全解 & 实战代码落地
c++·cmake
复杂网络1 天前
论最小 Agent 计算机的形态
算法
kisshyshy2 天前
🍦 雪糕、食堂、火车厢:三幅漫画吃透栈、队列与链表
javascript·算法