应为 ans[v] = max(ans[v], ans[u] + w),而非 ans[v] = ans[u] + w。
ans[v] = max(ans[v], ans[u] + w)
ans[v] = ans[u] + w
区别在于前者保证了满足所有约束条件,后者仅满足了当前约束条件。