Leetcode 1129 顏色交替的最短路徑

2021-10-20 17:51:04 字數 1527 閱讀 7545

1129. 顏色交替的最短路徑(難!!)

題目

在乙個有向圖中,節點分別標記為 0, 1, …, n-1。這個圖中的每條邊不是紅色就是藍色,且存在自環或平行邊。

red_edges 中的每乙個 [i, j] 對表示從節點 i 到節點 j 的紅色有向邊。類似地,blue_edges 中的每乙個 [i,

j] 對表示從節點 i 到節點 j 的藍色有向邊。

返回長度為 n 的陣列 answer,其中 answer[x] 是從節點 0 到節點 x

的紅色邊和藍色邊交替出現的最短路徑的長度。如果不存在這樣的路徑,那麼 answer[x] = -1。

示例 1:

輸入:n =

3, red_edges =[[

0,1]

,[1,

2]], blue_edges =

輸出:[0,

1,-1

]示例 2:

輸入:n =

3, red_edges =[[

0,1]

], blue_edges =[[

2,1]

]輸出:[0,

1,-1

]示例 3:

輸入:n =

3, red_edges =[[

1,0]

], blue_edges =[[

2,1]

]輸出:[0,

-1,-

1]示例 4:

輸入:n =

3, red_edges =[[

0,1]

], blue_edges =[[

1,2]

]輸出:[0,

1,2]

示例 5:

輸入:n =

3, red_edges =[[

0,1]

,[0,

2]], blue_edges =[[

1,0]

]輸出:[0,

1,1]

**

class

solution}}

else

if(curcolor ==0)

}}}}

// 根據題意,0 到自身的距離為0;在上述操作後,若 0 到其他節點距離仍為int_max,說明不存在符合要求的路徑,設定為-1;

Leetcode 1129 顏色交替的最短路徑

在乙個有向圖中,節點分別標記為0,1,n 1。這個圖中的每條邊不是紅色就是藍色,且存在自環或平行邊。red edges中的每乙個 i,j 對表示從節點i到節點j的紅色有向邊。類似地,blue edges中的每乙個 i,j 對表示從節點i到節點j的藍色有向邊。返回長度為n的陣列answer,其中ans...

1129 顏色交替的最短路徑

題目描述 在乙個有向圖中,節點分別標記為 0,1,n 1。這個圖中的每條邊不是紅色就是藍色,且存在自環或平行邊。red edges 中的每乙個 i,j 對表示從節點 i 到節點 j 的紅色有向邊。類似地,blue edges 中的每乙個 i,j 對表示從節點 i 到節點 j 的藍色有向邊。返回長度為...

1129 顏色交替的最短路徑(dfs)

1.問題描述 在乙個有向圖中,節點分別標記為 0,1,n 1。這個圖中的每條邊不是紅色就是藍色,且存在自環或平行邊。red edges 中的每乙個 i,j 對表示從節點 i 到節點 j 的紅色有向邊。類似地,blue edges 中的每乙個 i,j 對表示從節點 i 到節點 j 的藍色有向邊。返回長...