題意:有n個人每個人可以把謠言傳給一些人,傳給每個人有一定的時間,求出你把謠言傳給誰,讓所有的人都知道的時間最短。
思路:列舉每個點為起點,到所有點的距離的最大值就是該點為起點所消耗的時間,求出最小值就可以了,因為給的n較小,直接 floyd就可以了。。
#include#includeconst int n=110;
const int inf=0x3fffffff;
int dis[n],vis[n],n,map[n][n];
int main()
for(i=1;i<=n;i++)
}for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(map[i][j]>map[i][k]+map[k][j])
map[i][j]=map[i][k]+map[k][j];
min=inf;k=-1;
for(i=1;i<=n;i++)
if(min>max)
} if(min
poj1125最短路模板
簡單的模板應用,就是求圖中各個點中,每個點到其餘各點最大距離的最小值。include include include using namespace std define maxn 110 define maxint 999999 int ans maxn the longest distance ...
POJ 1125 裸最短路 Floyd
題意 第一行輸入乙個數n,表示有n個節點,之後的n行,第i 1行第乙個數表示i節點的子節點個數,接著i對數,每對數a,b表示i到a有一條長度為b的邊。輸入直到n 0結束。讓你選擇乙個點,目的是讓這個點散播訊息,使得這個點能以最快的速度把訊息散播到其他所有點。輸出格式為這個點以及散播時間。注意 有可能...
最短路 求最長最短路,求最短路的路徑
hdu 1595 find the longest of the shortest include include include include include include include include include include include include include defi...