BUPT複試專題 網路傳輸 2014網研

2022-08-02 09:42:12 字數 1521 閱讀 6057

網路的高效互聯與智慧型傳輸是提公升海量使用者服務請求對映效率的重要措施。在這個任務中,你需耍在最小的傳輸時間內,將資料來源傳輸到指定的網路節點中。

我們給定的網路一共包含n個節點,其中節點1為資料來源。網路中有m條無向邊(u,v,w),表示一條傳輸線連線節點u和節點v,且資料通過這條傳輸線的時間為 w。我們一共會給定k個目標節點,節點1只會傳送一次資料,你要計算出該資料從節點1傳送到所有k個節點所需耍的最短時間。目標節點可以按任意順序進行傳送,資料可以多次經過同一節點。

輸入資料第一行足乙個整數t (t<= 5),表示測試資料的組數。

對於毎組測試資料:

第一行三個正整數n, m, k 

分別表示節點數,邊數和目標節點數,

接下來m行,毎行三個數(u,v,w)如上所述給出毎條傳輸線。

m後一行是k個整數,給出所有的目標節點的編號。所有節點的編號都在 1到n之間。

對於毎組測試資料,輸出資料傳送到所有k 標節點的最短時間。

2

3 2 2

1 3 1

1 2 3

2 36 6 4

1 5 1

5 6 2

2 1 20

2 3 5

3 4 5

6 3 1

2 3 4 6

5

19

在第一組樣例屮,最短路線是:1->3->1->2。

在第二組樣例屮,最短路線是:1->5->6->3->2->3->4,或者1->5->6-> 3 -> 4 -> 3 -> 2

2014網研d題

思路是floyd + 全排列 交上去runtime error,沒有發現問題有人發現問題的話求告知┭┮﹏┭┮

#include#include

#include

#include

using

namespace

std;

#define max 5000

#define inf 0x3f3f3f3f

int d[max][max],min_road=inf,now=0

;int

v;void

floyd()

void permutation(char* pszstr,int k,int

m)

if(outprintnow=0

; }

else

}}int

main()

}while(mm--)

floyd();

char

sztextstr[max];

for(int j=0;j)

sztextstr[kk]='\0'

; permutation(sztextstr,

0,strlen(sztextstr)-1);//

全排列演算法

coutmin_road=inf;

now=0

; }

}return0;

}

BUPT複試專題 網路的核 2014

給定乙個無向網路g,共有n個節點 1到n m條邊,求網路的核。網路的核 到網路中其他節點距離之和最小的節點,且對於不連通的兩點,他們之間的距離為n,若有多組解,輸出編號最小的節點 第一行是乙個整數t表示測試資料的組數 26 對於每組測試資料 第一行有兩個整數n,m 表示n個點m條邊 接下來m行,每行...

BUPT複試專題 日期 2013

請你計算出第年月日是第x年的第幾天。其中,1月1日是第一天,1月2日是第二天,以此類推。計算時請注意閏年的影響。對於非整百年,年數能整除4是閏年,否則不是閏年 對於整百年,年數能整除400是閏年,否則不是閏年。如1900年和1901年不是閏年,而2000年和2004年是閏年。第一行有乙個整數,表示一...

BUPT複試專題 尋找變化前01序列 2016

給你乙個01序列,hdlc協議處理的話,如果出現連續的5個1會補1個0。例如1111110,會變成11111010。現在給你乙個經過hdlc處理後的01序列,你需要找到hdlc處理之前的01序列。例如給你11111010 你需要輸出1111110 輸入正整數n,表示n例測試。接著輸入n組資料,每組輸...