网易严选建有N个自营仓分布在全国各地,标记为仓库1到N。 给定一个配货时间组(v,u,w),v为出发仓库,u为目标仓库,w为从出发仓库到目标仓库的耗时时间。可能存在仓库间过远,无法支持调拨转货。 指定一个出发仓库K,我们需要将供应商发送到K仓库的货配送到各个仓库。问配送到所有可到达仓库所要最短时间?如果无法全部调拨到,则返回-1.-笔试面试资料
这是qklbishe.com第5409 篇笔试面试资料
提供答案分析,通过本文《网易严选建有N个自营仓分布在全国各地,标记为仓库1到N。 给定一个配货时间组(v,u,w),v为出发仓库,u为目标仓库,w为从出发仓库到目标仓库的耗时时间。可能存在仓库间过远,无法支持调拨转货。 指定一个出发仓库K,我们需要将供应商发送到K仓库的货配送到各个仓库。问配送到所有可到达仓库所要最短时间?如果无法全部调拨到,则返回-1.-笔试面试资料》可以理解其中的代码原理,这是一篇很好的求职学习资料
本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。
答案:
网易严选建有N个自营仓分布在全国各地,标记为仓库1到N。
给定一个配货时间组(v,u,w),v为出发仓库,u为目标仓库,w为从出发仓库到目标仓库的耗时时间。可能存在仓库间过远,无法支持调拨转货。
指定一个出发仓库K,我们需要将供应商发送到K仓库的货配送到各个仓库。问配送到所有可到达仓库所要最短时间?如果无法全部调拨到,则返回-1.
懒得写dijskra了。。就Floyd应付一下
int dijskra(vector<vector<int>>& graph, int N, int source) { for (int k = 1; k <= N; ++k) { for (int i = 1; i <= N; ++i) { for (int j = 1; j <= N; ++j) { if (graph[i][k] != INT_MAX && graph[k][j] != INT_MAX) graph[i][j] = min(graph[i][j], graph[i][k] + graph[k][j]); } } } int ans = INT_MIN; for (int i = 1; i <= N; ++i) { ans = max(ans, graph[source][i]); } if (ans == INT_MAX)return -1; return ans; } int main() { int N, K, M, v, u, w; cin >> N >> K >> M; vector<vector<int>> graph(N + 1, vector<int>(N + 1, INT_MAX)); for (int i = 0; i < M; ++i) { cin >> v >> u >> w; graph[v][u] = w; } for (int i = 0; i < N; ++i) { graph[i][i] = 0; } cout << dijskra(graph, N, K); return 0; }
2021-01-03 18:36:57 回复(0)
文章部分来自互联网,侵权联系删除
www.qklbishe.com
区块链毕设网(www.qklbishe.com)全网最靠谱的原创区块链毕设代做网站部分资料来自网络,侵权联系删除!资源收费仅为搬运整理打赏费用,用户自愿支付 !
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » 网易严选建有N个自营仓分布在全国各地,标记为仓库1到N。 给定一个配货时间组(v,u,w),v为出发仓库,u为目标仓库,w为从出发仓库到目标仓库的耗时时间。可能存在仓库间过远,无法支持调拨转货。 指定一个出发仓库K,我们需要将供应商发送到K仓库的货配送到各个仓库。问配送到所有可到达仓库所要最短时间?如果无法全部调拨到,则返回-1.-笔试面试资料
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » 网易严选建有N个自营仓分布在全国各地,标记为仓库1到N。 给定一个配货时间组(v,u,w),v为出发仓库,u为目标仓库,w为从出发仓库到目标仓库的耗时时间。可能存在仓库间过远,无法支持调拨转货。 指定一个出发仓库K,我们需要将供应商发送到K仓库的货配送到各个仓库。问配送到所有可到达仓库所要最短时间?如果无法全部调拨到,则返回-1.-笔试面试资料