Codevs 1243 網路提速

2021-07-28 20:36:36 字數 1432 閱讀 8646

時間限制: 1 s    

空間限制: 128000 kb    

題目等級 : ** gold

description

某學校的校園網由n(1<=n<=50)臺計算機組成,計算機之間由網線相連,如圖5。其中頂點代表計算機,邊代表網線。正如你所見,不同網線的傳輸能力不盡相同,例如計算機1與計算機2之間傳輸資訊需要34秒,而計算機2與計算機3之間的傳輸資訊只要10秒。計算機1與計算機5之間傳輸資訊需要44秒,途徑為機1到機3到機5。

現學校購買了m(1<=m<=10)臺加速裝置,每台裝置可作用於一條網線,使網線上傳輸資訊用時減半。多台裝置可用於同一條網線,其效果疊加,即用兩台裝置,用時為原來的1/4,用三颱裝置,用時為原來的1/8。如何合理使用這些裝置,使計算機1到計算機n傳輸用時最少,這個問題急需解決。校方請你程式設計解決這個問題。例如圖5,若m=2,則將兩台裝置分別用於1-3,3-5的線路,傳輸用時可減少為22秒,這是最佳解。

輸入描述 

input description

第一行先輸入n,m。以下n行,每行有n個實數。第i行第j列的數為計算機i與計算機j之間網線的傳輸用時,0表示它們之間沒有網線連線。注意輸入資料中,從計算機1到計算機n至少有一條網路。

輸出描述 

output description

輸出計算機1與計算機n之間傳輸資訊的最短時間。(保留兩位小數)

樣例輸入 

sample input

5 20 34 24 0 0

34 0 10 12 0

24 10 0 16 20

0 12 16 0 30

0 0 20 30 0

樣例輸出 

sample output

22.00

1 #include2 #include3 #include4 #include5

using

namespace

std;

6#define max 1000120

7int n,m,dis[55

];8 queueq;

9double map[55][55][10],f[60][15

];10

bool exist[55

];11

void

spfa()

1227}28

}29}30

}31}32

intmain()

3342

else46}

47}48for(int i=2;i<=n;i++)

49for(int j=0;j<=m;j++)

50 f[i][j]=max;

51spfa();

52 printf("

%.2lf

",f[n][m]);

53return0;

54 }

CodeVS1243 網路提速 最短路分層思想

題目描述 description 某學校的校園網由n 1 n 50 臺計算機組成,計算機之間由網線相連,如圖5。其中頂點代表計算機,邊代表網線。正如你所見,不同網線的傳輸能力不盡相同,例如計算機1與計算機2之間傳輸資訊需要34秒,而計算機2與計算機3之間的傳輸資訊只要10秒。計算機1與計算機5之間傳...

CODEVS1490 CTSC2008 網路管理

題目描述 description m公司是乙個非常龐大的跨國公司,在許多國家都設有它的下屬分支機構或部門。為了讓分布在世界各地的n個部門之間 協同工作,公司搭建了乙個連線整個公司的通訊網路。該網路的結構由n個路由器和n 1條高速光纜組成。每個部門都有乙個專屬的路由器,部門區域網內的所有 機器都聯向這...

草地排水 codevs1993 網路流

農夫約翰知道每一條排水溝每分鐘可以流過的水量,和排水系統的準確布局 起點為水潭而終點為小溪的一張網 需要注意的是,有些時候從一處到另一處不只有一條排水溝。根據這些資訊,計算從水潭排水到小溪的最大流量。對於給出的每條排水溝,雨水只能沿著乙個方向流動,注意可能會出現雨水環形流動的情形。第1行 兩個用空格...