尤拉迴路 鏟雪車

2021-10-02 12:23:53 字數 1196 閱讀 8262

隨著白天越來越短夜晚越來越長,我們不得不考慮剷雪問題了。

整個城市所有的道路都是雙向車道,道路的兩個方向均需要剷雪。因為城市預算的削減,整個城市只有 1 輛鏟雪車。

鏟雪車只能把它開過的地方(車道)的雪鏟乾淨,無論哪兒有雪,鏟雪車都得從停放的地方出發,遊歷整個城市的街道。

現在的問題是:最少要花多少時間去鏟掉所有道路上的雪呢?

輸入格式

輸入資料的第 1 行表示鏟雪車的停放座標 (x,y),x,y 為整數,單位為公尺。

下面最多有4000行,每行給出了一條街道的起點座標和終點座標,座標均為整數,所有街道都是筆直的,且都是雙向車道。

鏟雪車可以在任意交叉口、或任何街道的末尾任意轉向,包括轉 u 型彎。

鏟雪車鏟雪時前進速度為 20 千公尺/時,不剷雪時前進速度為 50 千公尺/時。

保證:鏟雪車從起點一定可以到達任何街道。

輸出格式

輸出鏟掉所有街道上的雪並且返回出發點的最短時間,精確到分鐘,四捨五入到整數。

輸出格式為」hours:minutes」,minutes不足兩位數時需要補前導零。

具體格式參照樣例。

資料範圍

− 10

6≤x,

y≤10

6−10^6≤x,y≤10^6

−106≤x

,y≤1

06所有位置座標絕對值不超過 106

10^6

106。

輸入樣例:

0 00 0 10000 10000

5000 -10000 5000 10000

5000 10000 10000 10000

輸出樣例:

3:55

樣例解釋

輸出結果表示共需3小時55分鐘。

我們分析可以知道每乙個道路的度都為0。所以一定存在尤拉迴路。所以直接所有道路的和乘以2就是我們的總路程了。

#include

using

namespace std;

intmain()

int time=

round

(sum/

1000/20

*60);

int min=time/60;

time%=60

;printf

("%d:%02d\n"

,min,time)

;}

鏟雪車 SSL2334 尤拉迴路

鏟雪車 題目描述 隨著白天越來越短夜晚越來越長,我們不得不考慮剷雪問題了。整個城市所有的道路都是雙車道,因為城市預算的削減,整個城市只有1輛鏟雪車。鏟雪車只能把它開過的地方 車道 的雪鏟乾淨,無論哪兒有雪,鏟雪車都得從停放的地方出發,遊歷整個城市的街道。現在的問題是 最少要花多少時間去鏟掉所有道路上...

鏟雪車 騎馬修柵欄 (尤拉路徑和尤拉迴路)

今天上午的訓練賽涉及到的,順便補一下叭。相信大家都聽說過著名的七橋問題,而尤拉迴路就是偉大的數學家尤拉為了解決七橋問題提出的。首先介紹一下基本概念 在乙個圖中,經過每條邊一次並且只經過一次的迴路被稱為尤拉迴路,路徑被稱為尤拉路徑。根據名字就可以知道,迴路是起點終點相同的,而路徑是起點終點不同的。其實...

尤拉迴路 輸出尤拉迴路的路徑

有向or無向均可,重邊 step1 從u開始,找到與他相連的v,放入棧,刪除 u,v 這條邊,然後從v開始 step2 當有一點沒有與他相連的點時,放入path,然後從stack取棧頂繼續開始找點刪邊。最後記得把棧裡的點放到path中。path倒序輸出 需要先找到起點 鄰接表法,適合稀疏圖 incl...