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

青岛金融网站建设广州建设工程交易中心电话

青岛金融网站建设,广州建设工程交易中心电话,电子商务网站有哪些功能,网站建设销售员工作内容题目描述 在有向图G 中#xff0c;每条边的长度均为1 #xff0c;现给定起点和终点#xff0c;请你在图中找一条从起点到终点的路径#xff0c;该路径满足以下条件#xff1a; 1 #xff0e;路径上的所有点的出边所指向的点都直接或间接与终点连通。 2 #xff0e;在满足… 题目描述 在有向图G 中每条边的长度均为1 现给定起点和终点请你在图中找一条从起点到终点的路径该路径满足以下条件 1 路径上的所有点的出边所指向的点都直接或间接与终点连通。 2 在满足条件1 的情况下使路径最短。 注意图G 中可能存在重边和自环题目保证终点没有出边。 请你输出符合条件的路径的长度。 输入输出格式 输入格式输入文件名为road .in。 第一行有两个用一个空格隔开的整数n 和m 表示图有n 个点和m 条边。 接下来的m 行每行2 个整数x 、y 之间用一个空格隔开表示有一条边从点x 指向点y 。 最后一行有两个用一个空格隔开的整数s 、t 表示起点为s 终点为t 。 输出格式输出文件名为road .out 。 输出只有一行包含一个整数表示满足题目᧿述的最短路径的长度。如果这样的路径不存在输出- 1 。 输入输出样例 输入样例#13 2 1 2 2 1 1 3 输出样例#1-1 输入样例#26 6 1 2 1 3 2 6 2 5 4 5 3 4 1 5 输出样例#23 说明 解释1 如上图所示箭头表示有向道路圆点表示城市。起点1 与终点3 不连通所以满足题 目᧿述的路径不存在故输出- 1 。 解释2 如上图所示满足条件的路径为1 - 3- 4- 5。注意点2 不能在答案路径中因为点2连了一条边到点6 而点6 不与终点5 连通。 对于30%的数据0n≤100m≤20 对于60%的数据0n≤1000m≤2000 对于100%的数据0n≤10,0000m≤200,0000xyst≤nx≠t。   这道题我们可以用逆向思维来想 如果一个点能到达终点那么终点也一定能到达这个点 这样就简单了 从终点跑一遍BFS算出每一个点的访问次数 然后把不能走的点删去 最后spfa带走 一个很有意思的能够找出访问次数而且不会死循环的方法 1 int toedge[i].v; 2 if(cs[to])continue; 3 q.push(to);  完整代码 1 #includeiostream2 #includecstdio3 #includecstring4 #includecmath5 #includequeue6 #define INF 0x7ffffff7 using namespace std;8 int read(int n)9 {10 int flag0,x0;char c/;11 while(c0||c9){cgetchar();if(c-)flag1;}12 while(c0c9)xx*10(c-48),cgetchar();13 if(flag)n-x;else nx;14 }15 const int MAXN200001;16 int n,m,bgx,bgy;17 int rudu[MAXN];18 struct node19 {20 int u,v,w,nxt;21 }edge[MAXN];22 int num1;23 int head[MAXN];24 int flag[MAXN];// 记录每个值是否能够到达终点 25 int cs[MAXN];26 int dis[MAXN];27 int vis[MAXN];28 void add_edge(int ll,int rr,int ww)29 {30 edge[num].ull;31 edge[num].vrr;32 edge[num].www;33 edge[num].nxthead[ll];34 head[ll]num;35 }36 void bfs()37 {38 queueintq;39 int tot0;40 q.push(bgx),tot;41 while(q.size()!0)42 {43 int pq.front();44 q.pop();45 for(int ihead[p];i!-1;iedge[i].nxt)46 {47 int toedge[i].v;48 if(cs[to])continue;49 q.push(to);50 }51 }52 //rudu[bgy]0;53 for(int i1;in;i)54 if(rudu[i]!cs[i]i!bgy)55 flag[i]1;56 }57 void dele()58 {59 for(int i1;inum;i)60 {61 if(flag[edge[i].u]!0)62 {63 edge[i].u-1;64 edge[i].v-1;65 edge[i].w-1;66 edge[i].nxt-1;67 }68 }69 }70 void spfa()71 {72 queueintq;73 q.push(bgx);74 dis[bgx]0;75 while(q.size()!0)76 {77 int pq.front();78 q.pop();79 vis[p]0;80 for(int ihead[p];i!-1;iedge[i].nxt)81 {82 if(edge[i].u-1)continue;83 int toedge[i].v;84 if(dis[to]dis[p]edge[i].w)85 {86 dis[to]dis[p]edge[i].w;87 if(vis[to]0)88 {89 vis[to]1;90 q.push(to);91 }92 }93 }94 }95 if(dis[bgy]INF)96 printf(-1);97 else98 printf(%d,dis[bgy]);99 } 100 int main() 101 { 102 freopen(roadb.in,r,stdin); 103 freopen(roadb.out,w,stdout); 104 read(n);read(m); 105 for(int i1;in;i)head[i]-1,dis[i]INF; 106 for(int i1;im;i) 107 { 108 int x,y; 109 read(x);read(y); 110 add_edge(y,x,1); 111 rudu[x]; 112 } 113 read(bgy);read(bgx); 114 bfs(); 115 dele(); 116 spfa(); 117 return 0; 118 }   转载于:https://www.cnblogs.com/zwfymqz/p/6899931.html
http://wiki.neutronadmin.com/news/230635/

相关文章:

  • 焦作专业做网站公司哪家好网站栏目结构图模板
  • 夏天做啥网站能致富国内最新军事新闻
  • 企业网站搜索优化苏州企业网站建设网络服务
  • 做国外服务器网站吗过期域名查询网站
  • 咨询网站建设WordPress网站图片预加载
  • 网站建设网上学wordpress tinymce 代码高亮
  • 网站建设原型图杭州市公共资源交易平台
  • 麻涌网站建设公司html5黑色网站
  • wordpress添加数据库文件百度小程序对网站seo
  • thinkphp网站模板百度官方平台
  • 铁路网站建设河北住房建设厅网站首页
  • seo网站推广教程制作动画的软件app
  • 佛山网站制作建设天津营销网站建设公司哪家好
  • php做网站需要的软件pc网站转换成app
  • 做网站怎么带流量wordpress 站点身份
  • 网站后台无法设置那个网站专利分析做的好
  • 网站制作找wordpress e
  • 专业网站制平台系统维护是什么意思
  • 电商网站建设培训班wordpress 显示ip
  • 官方网站投诉平台做网站第三方
  • 网站免费建做高铁在哪个网站买
  • 西安网站制作公司哪如何制作5分钟宣传片视频
  • 织梦做中英文网站详细步骤WordPress内链转外链
  • 58招聘运营网站怎么做提高seo排名
  • 怎样把建好的网站上传到互联网流量对于网站盈利
  • 俄罗斯女孩制作论文网站网站广告调词平台
  • 哪里有做php网站免费教程上海公司网页设计
  • 更合网站设计沈阳市网站制作
  • 如何制作自己网站自学网站建设要多久
  • 软文营销把什么放在第一位网站如何优化排名