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

萤石云网站开发怎么样免费做网站

萤石云网站开发,怎么样免费做网站,敦煌网站外引流怎么做,网站开发设计工程师工作前景题目 已知某市运营了N条地铁线路,市民在乘坐地铁时单条线路通票2元,换乘一次加1元。给出N条线路的所有站名列表,请帮乘客寻找从出发站到目的站最便宜的地铁换乘方案,并输出票价。每条地铁线路不包含环路,即没有相同站…

题目

已知某市运营了N条地铁线路,市民在乘坐地铁时单条线路通票2元,换乘一次加1元。给出N条线路的所有站名列表,请帮乘客寻找从出发站到目的站最便宜的地铁换乘方案,并输出票价。每条地铁线路不包含环路,即没有相同站名。

输入:

第一行为地铁线路条数N,范围是[1, 1000]

第二行到第N+1行,每条线路依次包含的站名,每个站名包含的字符个数不超过100,站点个数也不超过100,依次用空格隔开,不同线路中相同的站点名表示是一个换乘站

第N+2行,出发站和目的站,用空格隔开

输入保证:若可达则为唯一解

输出:

第一行按出发站-换乘站(可以是多个)-目的站的格式输出换乘方案的字符串

第二行输出换乘方案的总票价

如果没有任何方案实现出发站到目的站,只输出一行:NA

样例:

输入:

3
A B C D F
C E G H 
B G I J
A J

输出:

A-B-J
3

解释:一号线有A,B,C,D,F五个站点,二号线有C,E,G,H四个站点,三号线有B,G,I,J四个站点。从A站到J站的最省钱换乘路线是经B站换乘,票价3元

代码

思路:输入处理——站点与线路建立映射——直接到达检查——邻接表构建——BFS——路径回溯与打印输出

from collections import defaultdict, deque
# If you need to import additional packages or classes, please import here.def func():N = int(input())lines = []for i in range(N):line = list(map(str, input().split()))lines.append(line)start, end = list(map(str, input().split()))station_to_lines = defaultdict(list)for line_idx, stations in enumerate(lines):for s in stations:station_to_lines[s].append(line_idx)found_direct = Falsefor line_idx in station_to_lines[start]:if end in lines[line_idx]:print(f"{start}-{end}")print(2)exit()adj_with_s = defaultdict(list)for s in station_to_lines:line_list = station_to_lines[s]for i in range(len(line_list)):for j in range(i + 1, len(line_list)):l1 = line_list[i]l2 = line_list[j]adj_with_s[l1].append((l2, s))adj_with_s[l2].append((l1, s))start_lines = station_to_lines[start]end_lines = set(station_to_lines[end])dist = [-1] * Nprev = {}q = deque()for line in start_lines:dist[line] = 0q.append(line)target_line = -1found = Falsewhile q:current_line = q.popleft()if current_line in end_lines:target_line = current_linefound = Truebreakfor neighbor_line, s in adj_with_s.get(current_line, []):if dist[neighbor_line] == -1 or dist[current_line] + 1 < dist[neighbor_line]:dist[neighbor_line] = dist[current_line] + 1prev[neighbor_line] = (current_line, s)q.append(neighbor_line)if not found:print("NA")exit()else:path = []current_line = target_linewhile current_line in prev:current_line, s = prev[current_line]path.append(s)path.reverse()res_path = startfor i in range(len(path)):res_path = res_path + '-' + path[i]res_path = res_path + '-' + endprint(res_path)k = len(path)cost = k + 2print(cost)# please define the python3 input here. For example: a,b = map(int, input().strip().split())# please finish the function body here.# please define the python3 output here. For example: print().if __name__ == "__main__":func()
http://www.dtcms.com/wzjs/134447.html

相关文章:

  • 做网站怎么看效果图片外链生成工具
  • 仿新闻网站模板手机版苏州关键词优化搜索排名
  • 电子商务网站建设论文课题怎么样推广自己的网址
  • 手机网站制作系统网盘资源共享网站
  • 做信公众号首图的网站友情链接交换源码
  • 厦门仿站定制模板建站搜索引擎有哪些种类
  • 网站备案个人承诺书疫情最严重的三个省
  • seo岗位是什么意思优化搜索曝光次数的方法
  • 泰州网站建设方案优化线上如何推广自己的产品
  • 胶州网站建设平台爱战网关键词挖掘
  • 烟台网站建设优惠臻动传媒百度目前的推广方法
  • 福州建设局网站免费外链生成器
  • 合肥网站建设方案优化whois查询 站长工具
  • 手机网站建设新闻营销策划方案公司
  • 渝中集团网站建设山西百度推广开户
  • 笑话网站源码下载网站推广的途径和方法
  • 西宁做网站的好公司今日国内最新新闻
  • 山东省建设工程网站免费手游推广平台
  • 城市生活网官方网站app惠州网站建设方案推广
  • 自己做网站怎么推广贵阳网络推广外包
  • 做网站教学视频花西子网络营销案例分析
  • 全屏网站设计尺寸seo快速软件
  • 佛山网站关键词交换友情链接的好处
  • 网站营销应该怎么做职业技术培训
  • 1688网站怎样做推广360优化大师最新版下载
  • 网站策划方案实例应用商店优化
  • office做网站模板整站优化案例
  • 鹰潭门户网站建设费用百度下载官方下载安装
  • 百度做一个网站怎么做呢自动推广软件免费
  • 免费网站建设咨询重庆网站seo推广公司