当前位置: 首页 > news >正文

互联网推广公司北京网站怎么优化

互联网推广公司,北京网站怎么优化,c2c网站开发策划,wordpress is sticky作为一个城市的应急救援队伍的负责人#xff0c;你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候#xff0c;你的任务是带领你的…作为一个城市的应急救援队伍的负责人你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候你的任务是带领你的救援队尽快赶往事发地同时一路上召集尽可能多的救援队。 输入格式: 输入第一行给出4个正整数N、M、S、D其中N2≤N≤500是城市的个数顺便假设城市的编号为0 ~ (N−1)M是快速道路的条数S是出发地的城市编号D是目的地的城市编号。 第二行给出N个正整数其中第i个数是第i个城市的救援队的数目数字间以空格分隔。随后的M行中每行给出一条快速道路的信息分别是城市1、城市2、快速道路的长度中间用空格分开数字均为整数且不超过500。输入保证救援可行且最优解唯一。 输出格式: 第一行输出最短路径的条数和能够召集的最多的救援队数量。第二行输出从S到D的路径中经过的城市编号。数字间以空格分隔输出结尾不能有多余空格。 输入样例: 4 5 0 3 20 30 40 10 0 1 1 1 3 2 0 3 3 0 2 2 2 3 2输出样例: 2 60 0 1 3 分析 首先代码从标准输入读取节点数 n边数 m源点 s 和终点 d。接着读取每个节点的帮助值并建立节点和其对应邻居的边这里边是有向的每个边都连接两个节点并有一个相关的权重。然后初始化一个距离数组 dist用于存储从源点 s 到每个节点的最短距离。同时初始化两个累计数组 total 和 sum_help用于存储从源点 s 到每个节点的所有节点的帮助值的总和。还初始化一个 parent 数组用于存储最短路径上的节点。使用堆优先队列q 存储待处理的节点。将源点 s 添加到堆中并设置其距离为 0总帮助值为 1累计帮助值为其自身的帮助值。然后进入一个 while 循环不断地从堆中取出距离最小的节点并更新其邻居的距离和累计帮助值。如果邻居的距离更新那么就将其添加到堆中。当堆为空时结束循环。此时dist 和 total 数组中存储的值就是从源点 s 到每个节点的最短距离和累计帮助值。最后通过回溯 parent 数组找出从源点 s 到终点 d 的最短路径并打印出来。同时打印出终点的累计帮助值。 Python版本 import heapq import sysn, m, s, d map(int, sys.stdin.readline().split()) help_val list(map(int, sys.stdin.readline().split())) edge [[] for _ in range(n)] for _ in range(m):x, y, z map(int, sys.stdin.readline().split())edge[x].append((y, z))edge[y].append((x, z))dist [float(inf) for _ in range(n)] total [0 for _ in range(n)] sum_help [0 for _ in range(n)] p [-1 for _ in range(n)] dist[s] 0 total[s] 1 sum_help[s] help_val[s] q [] heapq.heappush(q, (0, s))while q:tmp heapq.heappop(q)x tmp[1]if dist[x] tmp[0]:continuefor i in edge[x]:if dist[i[0]] dist[x] i[1]:dist[i[0]] dist[x] i[1]total[i[0]] total[x]sum_help[i[0]] sum_help[x] help_val[i[0]]p[i[0]] xheapq.heappush(q, (dist[i[0]], i[0]))else:if dist[i[0]] dist[x] i[1]:total[i[0]] total[x]sum_help_tmp sum_help[x] help_val[i[0]]if sum_help_tmp sum_help[i[0]]:sum_help[i[0]] sum_help_tmpp[i[0]] xpath [] x d while x ! -1:path.append(str(x))x p[x] print(total[d], sum_help[d]) print( .join(path[::-1]))总结 这段代码的主要创新点在于同时求解最短路径和累计帮助值。这在一些实际的网络优化问题中是非常有用的。例如在紧急救援中我们需要找出一条最短的路线同时还要考虑沿途各个节点的资源如食物、水等的总量。
http://www.pierceye.com/news/860212/

相关文章:

  • 有没有什么 网站能够做试卷wordpress写 a href
  • 西安 北郊网站建设网站上传图片加水印
  • 沈阳网站制作哪家好包头爱出行app最新版本
  • 怎么用IP做网站地址网站如何投放广告
  • 试述电子商务网站的建设流程太原建站的模板
  • 微信群投票网站怎么做的企业门户网站怎么做
  • 建网站平台 优帮云嘉兴营销型网站
  • 建筑类专业做教育的网站ui设计app
  • 郑州做营销型网站的公司什么叫社交电商平台
  • 外国做问卷可以赚钱的网站做中国菜的外国网站
  • 青岛市建设厅网站快递网站建设
  • 昆明网站WordPress文章怎么折叠
  • 拖拽建站系统源码企业主题展厅设计公司
  • asp.net网站的数据库配置张家港网站 设计制作
  • 聊城手机网站建设多少钱扬州网站建设哪个好薇
  • 云南安宁做网站的公司手机网页制作软件中文版
  • 如何做征信公司网站做谷歌推广一定要网站吗
  • 重庆市做网站的公司有哪些苏州网站建设设计公司
  • 网站制作计算机域名解析到网站
  • 自己做的电影网站打开很慢wordpress 防采集
  • 西安专业网站建设公司排名做网站编写
  • 做电影网站还能赚钱云南网站建设哪家公司好
  • 重庆定制网站开发什么是网络营销战略
  • 网站建设硬件方案精准客源app
  • 网站视觉优化怎么做电子商务网站建设参考文献2018
  • 服务器可以吧网站做跳转吗wordpress 远程图片本地化
  • 网站在线访谈栏目建设个人网站可以备案了吗
  • 汉口北做网站搜索广告是什么
  • 电商网站可以用dw做嘉兴网站建设平台
  • 做网站是数据库应该放在哪里建筑工程水平防护网