明小學的小朋友們要舉行一年一度的接力跑大賽了,但是小朋友們卻遇到了乙個難題:設計接力跑大賽的線路,你能幫助他們完成這項工作麼?
光明小學可以抽象成一張有n個節點的圖,每兩點間都有一條道路相連。光明小學的每個班都有m個學生,所以你要為他們設計出一條恰好經過m條邊的路徑。
光明小學的小朋友們希望全盤考慮所有的因素,所以你需要把任意兩點間經過m條邊的最短路徑的距離輸出出來以供參考。
你需要設計這樣乙個函式:
res solve( n, m, map);
注意:map必然是n * n的二維陣列,且map[i][j] == map[j][i],map[i][i] == 0,-1e8 <= map[i][j] <= 1e8。(道路全部是無向邊,無自環)2 <= n <= 100, 2 <= m <= 1e6。
map陣列表示了一張稠密圖,其中任意兩個不同節點i,j間都有一條邊,邊的長度為map[i][j]。n表示其中的節點數。
你要返回的陣列也必然是乙個n * n的二維陣列,表示從i出發走到j,經過m條邊的最短路徑
你的路徑中應考慮包含重複邊的情況。
樣例:n = 3
m = 2
map = ,,}
輸出結果result為:
result = ,,}
輸入樣例:32
3 3
0 2 3
2 0 1
3 1 0
輸出樣例:
[[4, 4, 3],
[4, 2, 5],
[3, 5, 2]]
#include #include #include using namespace std;
vector> result;
vector> map;
int mindis = int_max;
void dfs(int start, int end, int n, int m, int distance, int steps)
int rdis;
for (int next = 0; next < n; next++) }
vector> solution(int n, int m)
} return result;
}int main()
} solution(n, m);
for (int i = 0; i < result.size(); i++)
return 0;
}
參考部落格: 程式設計 網易2019校招筆試程式設計題
題目 小易有乙個古老的遊戲機,上面有著經典的遊戲俄羅斯方塊。因為它比較古老,所以規則和一般的俄羅斯方塊不同。熒幕上一共有 n 列,每次都會有乙個 1 x 1 的方塊隨機落下,在同一列中,後落下的方塊會疊在先前的方塊之上,當一整行方塊都被佔滿時,這一行會被消去,並得到1分。有一天,小易又開了一局遊戲,...
騰訊前端2019校招程式設計題題解
題目 這個數是和諧的嗎?12 1 2 0,所以12是和諧的 輸入 3 表示3行資料 3412 13輸出 noyes no var readline require readline const rl readline.createinte ce var curline 0 var t 0 var i...
2019校招真題程式設計(十)瞌睡
小易覺得高數課太無聊了,決定睡覺。不過他對課上的一些內容挺感興趣,所以希望你在老師講到有趣的部分的時候叫醒他一下。你知道了小易對一堂課每分鐘知識點的感興趣程度,並以分數量化,以及他在這堂課上每分鐘是否會睡著,你可以叫醒他一次,這會使得他在接下來的k分鐘內保持清醒。你需要選擇一種方案最大化小易這堂課聽...