這個暢通工程還是一交就過,看來暢通工程用來入門是最好了,以後拿這些來掛就不會那麼打擊人了,天天開心。這裡求最小生成樹之前要自己構圖,很簡單就是求出點到點之間的距離,如果距離大於1000和小於10都視作不連通。點少,還是prim就好了。不過這裡存在不連通的情況,不想前面的的工程那麼暢通,最後加乙個迴圈判斷就好了。
#include#include#includestruct point
pt[105];
double d[105],map[105][105];
bool v[105];
int c;
double dist(point a,point b)
void graph()}}
}double prim()
}
v[pt]=true;
if( pt==-1) break;
ret+=mim;
}for( i=0; i
HDOJ 1875 暢通工程再續
題意 給出一百個點的座標,任意兩點之間都有邊,求將所有點連線起來的最短的所有邊長和 思路 最小生成樹模板,稠密圖,對邊的長度進行篩選即可 注意點 無 以下為ac run id submit time judge status pro.id exe.time exe.memory code len.l...
1875 暢通工程再續
零基礎學演算法135 include using namespace std include const double inf 0x3f3f3f3f 1.0 struct node double d 105 105 int c 島嶼個數 void prim int count 1 for int i...
hdu 1875 暢通工程再續
題目 又是最小生成樹。一開始錯了幾次。我以為是當兩段路大於1000或者小於10就會不符合要求。其實是讀錯題意了。當兩段路大於1000或者小於10。只應該把這段路變成死路。下面是ac include includeusing namespace std define n 9999999 int n d...