第四次CCF 4 網路延遲(bfs)

2021-07-22 10:35:51 字數 1728 閱讀 3632



問題描述

試題編號:

201503-4

試題名稱:

網路延時

時間限制:

1.0s

記憶體限制:

256.0mb

問題描述:

問題描述

給定乙個公司的網路,由n臺交換機和m臺終端電腦組成,交換機與交換機、交換機與電腦之間使用網路連線。交換機按層級設定,編號為1的交換機為根交換機,層級為1。其他的交換機都連線到一台比自己上一層的交換機上,其層級為對應交換機的層級加1。所有的終端電腦都直接連線到交換機上。

當資訊在電腦、交換機之間傳遞時,每一步只能通過自己傳遞到自己所連線的另一台電腦或交換機。請問,電腦與電腦之間傳遞訊息、或者電腦與交換機之間傳遞訊息、或者交換機與交換機之間傳遞訊息最多需要多少步。

輸入格式

輸入的第一行包含兩個整數n, m,分別表示交換機的台數和終端電腦的台數。

第二行包含n - 1個整數,分別表示第2、3、……、n臺交換機所連線的比自己上一層的交換機的編號。第i臺交換機所連線的上一層的交換機編號一定比自己的編號小。

第三行包含m個整數,分別表示第1、2、……、m臺終端電腦所連線的交換機的編號。

輸出格式

輸出乙個整數,表示訊息傳遞最多需要的步數。

樣例輸入

4 2

1 1 3

2 1

樣例輸出

4

樣例說明

樣例的網路連線模式如下,其中圓圈表示交換機,方框表示電腦:

其中電腦1與交換機4之間的訊息傳遞花費的時間最長,為4個單位時間。

樣例輸入

4 4

1 2 2

3 4 4 4

樣例輸出

4

樣例說明

樣例的網路連線模式如下:

其中電腦1與電腦4之間的訊息傳遞花費的時間最長,為4個單位時間。

評測用例規模與約定

前30%的評測用例滿足:n ≤ 5, m ≤ 5。

前50%的評測用例滿足:n ≤ 20, m ≤ 20。

前70%的評測用例滿足:n ≤ 100, m ≤ 100。

所有評測用例都滿足:1 ≤ n ≤ 10000,1 ≤ m ≤ 10000。

題意:求乙個樹的最長直徑。

題解:網上很多dfs的做法,不過還是覺得bfs更好像,這裡需要兩次bfs,其原因是以1作為起點的話,這個起點

不一定是最長路徑的起點或者終點,但是從這一起點出發的最長路徑的終點一定是圖中最長路徑的起點或者終點。

**如下:

#include#include#include#include#include#include#include#includeusing namespace std;

#define maxn 20005

vectorq[maxn];

queuep;

int visit[maxn];

int d[maxn];

int maxs;

int bfs(int x)

p.push(v);

}} }

return ans;

}int main()

for(i=1;i<=m;i++)

int ans=bfs(1);

ans=max(ans,bfs(maxs));

printf("%d\n",ans);

}}

計算機網路第四次上機

計算機網路第四次上機 學號 姓名 一 實驗目的 1 了解ip協議的基礎知識。2 了解ip資料報的分片和重組。二 實驗內容 1.使用dhcp獲取ip位址 開啟命令列介面,然後wireshark啟動跟蹤 過濾器用bootp,這個是選擇的 dhcp 將跟蹤結果儲存到ip1.cap中,在命 令行輸入下列命令...

第四次作業4 樹和二叉樹

學不會,學不會,都是問題,告辭。7 1 還原二叉樹 25 分 7 8 jmu ds 二叉樹葉子結點帶權路徑長度和 25 分 6 4 jmu ds 表示式樹 25 分 7 1 還原二叉樹 25 分 bt findtree char a,char b,int length 先序遍歷確定頭結點,中序遍歷確...

第三週第四次課 4月9日)筆記

4.1 df命令 df 檢視磁碟的使用情況 linux磁碟不能直接使用,必須找到掛載點才能讀寫資料 df h 顯示單位 devtmpfs記憶體 tmpfs 都為臨時檔案 free 命令看swap df i檢視分割槽inode 個數及其使用情況 df m 以m為單位 4.2 du命令 du sh ro...