題目描述:
XX星有許多城市,城市之間通過一種奇怪的高速公路SARS進行交流,每條SARS都對行駛在上面的Flycar限制了固定的Speed,同時XX星人對 Flycar的“舒適度”有特殊要求,即乘坐過程中最高速度與最低速度的差越小乘坐越舒服 ,但XX星人對時間卻沒那麼多要求。要你找出一條城市間的最舒適的路徑。
大致思路:
第一反應看到差值最小值想到的是二分,二分解決問題的最經典的一類就是二分最小值,而事實上證明這個問題確實可以用二分+最短路來解,但並不是最好操作的解法。這種方法就是枚舉+最小生成樹,每當確定一對起點和終點,就枚舉經過邊的最小值,然後通過kruskal算法不斷加邊,知道兩個點在同一個集合中,計算差值更新答案。這樣看來的話代碼量就少了不少。
代碼:
略。