在糾結了很久之後,博士終於決定約某個女生出來爬山(你們可以諮詢我這個人的名字是什麼,我可以免費告訴你喲,親! ).
博士所在的城市特別奇怪,任何兩個居住點之間有且僅有一條通路(其實這是方便博士遍歷所有的路徑來找後宮).
他決定先去接這個女生,然後再跟女生一起去爬山.
可是女生卻不願意告訴博士她到底在**(博士又被調戲了囧),她只是告訴了博士兩個居住點,而她就在這兩個居住點中的任意乙個.
博士決定先去距離他所在的居住點近的乙個居住點,如果女生不在這個居住點,他再去另外乙個居住點接女生.
現在博士很好奇,如果不知道他所在的具體位置,也不知道女生告訴博士的兩個居住點的具體位置,博士最壞情況下要走多遠?
輸入檔名為 blackbs.in。 (我不黑博士,對吧?)
輸入第一行兩個正整數
n 和 m。
分別表示博士所在城市的樓房數和街道數。
下接 m
行,每行
3個正整數 xi
,yi ,zi
,描述一條從 xi
到 yi
的長度為 zi
的街道。
輸出檔名為 blackbs.out。
輸出一行乙個正整數,為最壞情況下博士要走的距離。
4 3對於 20%1 2 1
2 3 1
3 4 1
的資料,
n<=
100 ;
m<=
10000
; 每條街道的長度
<=
100 ;
對於 100
% 的資料,
n<=
200000
;m<=
2000000
; 每條街道的長度
<=
100000
.求出樹的直徑,其兩段即為女生的居住點;
然後列舉博士所在的位置,更新最大值即可。
#include
#include
#include
#include
#define max(x,y) ((x)>(y)?(x):(y))
#define min(x,y) ((x)<(y)?(x):(y))
#define ll long long
using
namespace
std;
int n,m,l,r,cnt;
ll maxn;
int head[200010],nxt[4000010],data[4000010],flow[4000010];
ll dis[200010],dis2[200010];
bool in_stack[200010];
queue
q;void add(int x,int y,int z)
void spfa(int s)}}
}void spfa2(int s)}}
}int main()
memset(dis,0x3f,sizeof dis);maxn=-dis[0];
spfa(1);
for(int i=1;i<=n;i++)
if(dis[i]>maxn)
memset(dis,0x3f,sizeof dis);maxn=-dis[0];
spfa(l);
for(int i=1;i<=n;i++)
if(dis[i]>maxn)
memset(dis2,0x3f,sizeof dis2);maxn=-dis2[0];
spfa2(r);
for(int i=1;i<=n;i++)
maxn=max(maxn,min(dis2[i],dis[i]));
printf("%lld\n",maxn+dis[r]);
return
0;}
想讀博士我看好武漢大學!
現在博士學位市場魚龍混雜,很多學校聲稱能拿到學位,也確實有一些學校可以拿到博士學位,但個別學校條件嚴苛,與宣稱的錄取率不符。給大家推薦武漢大學的博士,原因有幾個 一 武漢大學是重點綜合大學,也是國家 985工程 和 211工程 重點建設高校。學校是名牌,畢竟在中國,還是很講究學校名氣的。二 他們去年...
我的八年博士生涯
作者 王贇 下周一我就要開始在 facebook 上班了。趁入職之前,我想寫一寫我博士生涯的感悟 再不寫就要涼啦。從 2010 年 8 月到 2018 年 10 月,我把我最好的青春年華都獻給了卡內基梅隆大學 cmu 的語言技術研究所 lti 其中前兩年是碩士,但由於 lti 的碩士生活跟博士並沒有...
不不不!我要認真寫部落格! Django的安裝
作為乙個部落格小白,我先寫乙個簡單的來練練手。本文主要引用了中的內容,是大神翻譯的django 1.8 中文文件,強烈推薦,如果不想看我的就去看看他們寫的吧!django作為python的乙個web框架,想要使用django的話,首先你要安裝python是不是?安裝pip工具,用來安裝django的...