日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

2010 Stanford Local ACM Programming Contest-H解题报告

發布時間:2023/12/9 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2010 Stanford Local ACM Programming Contest-H解题报告 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題意是說,給出一些道路,要修建一條高速公路,高速公路不能分叉,而且是在給出的圖中的一些路徑組成,求的是不在高速公路上的點離高速公路的最遠距離的最小值是多少。首先要找到一條這個圖中的關鍵路徑,既最長的路徑,如果高速公路不是最長路徑,那么沒法滿足其他的點到高速公路的距離最大值最小,而找最長路徑,先從任意點找到離這個點最遠的一個點,然后從最遠的點找到一條最長的路徑既為最長路徑了。很有用的結論

View Code 1 #include<stdio.h> 2 #include<string.h> 3 #define N 100005 4 #define inf 0x7fffffff 5 int head[N],t; 6 int used[N]; 7 int d[N]; 8 int par[N]; 9 int f,r; 10 struct node 11 { 12 int l; 13 int id; 14 }; 15 node q[N]; 16 struct edge 17 { 18 int v,next,l; 19 }; 20 edge e[2*N]; 21 void add(int u,int v,int l) 22 { 23 e[t].v=v; 24 e[t].l=l; 25 e[t].next=head[u]; 26 head[u]=t++; 27 } 28 void bfs() 29 { 30 int i,j; 31 node tmp; 32 while(f<r) 33 { 34 tmp=q[f]; 35 f++; 36 for(i=head[tmp.id];i>=0;i=e[i].next) 37 { 38 if(!used[e[i].v]) 39 { 40 used[e[i].v]=true; 41 par[e[i].v]=tmp.id; 42 d[e[i].v]=tmp.l+e[i].l; 43 q[r].id=e[i].v; 44 q[r++].l=d[e[i].v]; 45 } 46 } 47 } 48 } 49 int main() 50 { 51 int n,i,j,k; 52 int u,v,l; 53 node tmp; 54 while(scanf("%d",&n)&&n) 55 { 56 memset(head,-1,sizeof(head)); 57 t=0; 58 for(i=0;i<n-1;i++) 59 { 60 scanf("%d%d%d",&u,&v,&l); 61 add(u,v,l); 62 add(v,u,l); 63 } 64 memset(used,0,sizeof(used)); 65 d[1]=0; 66 used[1]=true; 67 f=r=0; 68 q[r].id=1; 69 q[r++].l=0; 70 bfs(); 71 int max=d[1],mi=1; 72 for(i=1;i<=n;i++) 73 { 74 if(d[i]>max) 75 { 76 max=d[i]; 77 mi=i; 78 } 79 } 80 int s=mi; 81 f=r=0; 82 q[r].id=s; 83 q[r++].l=0; 84 memset(used,0,sizeof(used)); 85 memset(par,0,sizeof(par)); 86 used[s]=true; 87 d[s]=0; 88 bfs(); 89 max=d[1],mi=1; 90 for(i=1;i<=n;i++) 91 { 92 if(d[i]>max) 93 { 94 max=d[i]; 95 mi=i; 96 } 97 } 98 k=mi; 99 f=r=0; 100 memset(used,0,sizeof(used)); 101 used[s]=true; 102 d[s]=0; 103 while(k) 104 { 105 used[k]=true; 106 q[r].id=k; 107 q[r++].l=0; 108 d[k]=0; 109 k=par[k]; 110 if(k==s) 111 break; 112 } 113 bfs(); 114 max=d[1]; 115 for(i=1;i<=n;i++) 116 { 117 if(d[i]>max) 118 { 119 max=d[i]; 120 } 121 } 122 printf("%d\n",max); 123 } 124 return 0; 125 }

轉載于:https://www.cnblogs.com/caozhenhai/archive/2012/06/04/2535182.html

總結

以上是生活随笔為你收集整理的2010 Stanford Local ACM Programming Contest-H解题报告的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 毛片内射 | 青青成人 | 精品不卡在线 | 五月亚洲| 一级黄色片免费观看 | 久久青青 | 亚洲精品成人av | 国产大屁股喷水视频在线观看 | 国内免费av| 久草精品在线观看 | 日韩一区二区高清 | 我要爱爱网 | 美女福利视频 | 亚洲第一激情 | 日本一区二区不卡在线观看 | 欧美高潮视频 | 日韩免费视频 | 日本强好片久久久久久aaa | 91免费高清在线观看 | 午夜香蕉 | 色七七视频 | 182tv午夜| 秋霞综合网 | 四虎影视国产精品 | 女人做爰全过程免费观看美女 | 欧美成人影院 | 国产乱淫精品一区二区三区毛片 | jizz一区二区 | 午夜黄色av | 色噜噜狠狠狠综合曰曰曰 | 亚洲免费视 | 日本色区| 亚洲系列 | 冲田杏梨av| 男人的天堂一区二区 | 国产精品久久久久久亚洲伦 | 无限资源日本好片 | 在线视频欧美日韩 | 亚洲熟妇无码久久精品 | 青娱乐在线视频观看 | 色图自拍偷拍 | 日韩欧美操| feel性丰满白嫩嫩hd | 中文字幕在线视频第一页 | 四虎新网址 | 六月婷婷久久 | 久艹在线观看 | 青草精品视频 | 日韩视频免费观看高清完整版 | 亚洲精品一区二区三区四区 | 午夜激情成人 | 黄色一级视频片 | 土耳其xxxx性hd极品 | 成人av影院 | 在线观看自拍 | 奇米影视第四色888 免费观看a毛片 | 丝袜五月天 | 国产精品久久久久久久久久久新郎 | 最新在线视频 | 九草在线 | 奇米影视999 | 欧美一级片a | 国产人与zoxxxx另类 | 日日爱av | 亚洲一区毛片 | 男人和女人插插 | 午夜精品一区二区三 | 久久精品视频日本 | 高清中文字幕 | 精品人妻一区二区三区日产乱码 | 久久亚洲精精品中文字幕早川悠里 | 人妻在客厅被c的呻吟 | 日韩精品一区二区av | 天天综合天天做天天综合 | 青青草视频国产 | 国产乱码精品一区二区三区中文 | h片大全 | 国产深喉视频一区二区 | 综合久久久久久久 | 国产精品一区二区三区在线 | 久久伊人精品 | 三级影片在线免费观看 | 无码无遮挡又大又爽又黄的视频 | 亚洲两性 | 超碰狠狠干 | 免费a级 | 久久图库 | 污网站免费观看 | 纯爱无遮挡h肉动漫在线播放 | 久久精品91| 97国产超碰 | 久久人人爽人人爽人人片av高清 | 免费无码一区二区三区 | a视频在线观看免费 | 性欧美videossex精品 | 一二三区中文字幕 | 国产又黄又嫩又滑又白 | www.亚洲高清 | 香蕉网站在线 |