蒜头君生活的宇宙有 n 个星球,有 m 条虫洞。蒜头君发明了时光机,利用虫洞进行时光旅行。这 m 条虫洞,第 i条虫洞能实现星球 a_i 到 b_i 的单向旅行。蒜头君发明的时光机不稳定,通过第 i 条虫洞能够使得时间前进或者倒退 c_i(c_i≥0 表示前进,c_i < 0 表示倒退)。
如果通过时光机能够让时间无限倒退,那么将会掉进时间漩涡,从而实现穿越。那么蒜头君发明的时光机能否实现穿越(蒜头君可以从任何星球开始)。
蒜头君生活的宇宙有 n 个星球,有 m 条虫洞。蒜头君发明了时光机,利用虫洞进行时光旅行。这 m 条虫洞,第 i条虫洞能实现星球 a_i 到 b_i 的单向旅行。蒜头君发明的时光机不稳定,通过第 i 条虫洞能够使得时间前进或者倒退 c_i(c_i≥0 表示前进,c_i < 0 表示倒退)。
如果通过时光机能够让时间无限倒退,那么将会掉进时间漩涡,从而实现穿越。那么蒜头君发明的时光机能否实现穿越(蒜头君可以从任何星球开始)。
蒜头君在玩一个很好玩的游戏,这个游戏一共有至多 100 个地图,其中地图 1 是起点,房间 n 是终点。有的地图是补给站,可以加 k_i 点体力,而有的地图里存在怪物,需要消耗 k_i 点体力,地图与地图之间存在一些单向通道连接。
蒜头君从 1 号地图出发,有 100 点初始体力。每进入一个地图的时候,需要扣除或者增加相应的体力值。这个过程持续到走到终点,或者体力值归零就会 Game Over。不过,他可以经过同个地图任意次,且每次都需要接受该地图的体力值。
蒜头君准备去参加骑车比赛,比赛在 n 个城市间进行,编号从 1 到 n。选手们都从城市 1 出发,终点在城市 n。
已知城市间有 m 条道路,每条道路连接两个城市,注意道路是双向的。现在蒜头君知道了他经过每条道路需要花费的时间,他想请你帮他计算一下,他这次比赛最少需要花多少时间完成。
圣诞节快到了,蒜头君准备做一棵大圣诞树。
这棵树被表示成一组被编号的结点和一些边的集合,树的结点从 1 到 n 编号,树的根永远是 1。每个结点都有一个自身特有的数值,称为它的权重,各个结点的权重可能不同。对于一棵做完的树来说,每条边都有一个价值 v_e,若设这条边 e 连接结点 i 和结点 j,且 i 为 j 的父结点(根是最老的祖先),则该边的价值 v_e = s_j × w_e,s_j表示结点 j 的所有子孙及它自己的权重之和,w_e 表示边 e 的权值。
现在蒜头君想造一棵树,他有 m 条边可以选择,使得树上所有边的总价值最小,并且所有的点都在树上,因为蒜头君喜欢大树。
蒜头君陷入了坐标系上的一个迷阵,迷阵上有 n 个点,编号从 1 到 n。蒜头君在编号为 1 的位置,他想到编号为 n 的位置上。蒜头君当然想尽快到达目的地,但是他觉得最短的路径可能有风险,所以他会选择第二短的路径。现在蒜头君知道了 n 个点的坐标,以及哪些点之间是相连的,他想知道第二短的路径长度是多少。
注意,每条路径上不能重复经过同一个点。
对于一个带权图,求两个顶点之间的次短路。次短路表示除最短路以外长度最小的路径。
实际上我们遇到的次短路问题分成两种,第一种次短路中可以重复经过一个点,第二种次短路不能重复经过一个点的。而这一个区别会导致解法上的很大区别。
1 | git config --global http.proxy socks5://127.0.0.1:1080 |
当我们在 GitHub 上创建一个仓库时,同时生成了仓库的默认主机名 origin,并创建了默认分支 master。GitHub 可以看成是免费的 Git 服务器,在 GitHub 上创建仓库,会自动生成一个仓库地址,主机就是指代这个仓库,主机名就等于这个仓库地址。克隆一个 GitHub 仓库(也叫远程仓库)到本地,本地仓库则会自动关联到这个远程仓库,执行 git remote -v 命令可以查看本地仓库所关联的远程仓库信息
Git 要求对本地仓库关联的每个远程主机都必须指定一个主机名(默认为 origin),用于本地仓库识别自己关联的主机,git remote 命令就用于管理本地仓库所关联的主机,一个本地仓库可以关联任意多个主机(即远程仓库)。
对于全是非正数的序列,答案明显就是其中的最大元素
对于有正数的序列,考虑以每一个点为结尾的最大字段和,这个子段一定满足前缀和均非负,因为如果有一个前缀是负的,那么去掉这个前缀对于这个点一定更优,并且这个子段要尽量往前延伸
所以我们可以只用一次扫描,记录目前统计的和sum 以及答案 ans. **当 sum 加上当前位置这个数还是正数的时候就继续累加sum, 否则就将sum 置为 0.**:这样就舍掉了所有前缀为负的情况,并且保证了这个子段尽可能的长,也就是说扫描中记录的sum就是以每个点为结尾的最大字段和,每一次如果sum比ans大就可以更新ans. 最后 ans就是整体的最大子段和。
时间复杂度 O(N)