洛谷P1007 獨木橋 題解

2021-10-05 22:33:18 字數 793 閱讀 1189

題目鏈結

和《挑戰程式設計》的第一題類似,書上說的理解的不是特別清楚。看到洛谷裡的一篇題解的思路挺好。

來自

你在橋上看風景,看風景的人在轟炸機上看著你。

首先自行腦補一下,假裝你正在20000公尺高空的轟炸機上用高倍顯微鏡望遠鏡默默欣賞士兵離開,你會發現什麼東西?一堆花花綠綠的迷彩服在移動。(不是鬼片!不是鬼片!不是鬼片!重要的事情說三遍)

那麼當兩個士兵撞在一起時,從你的視角看會發生什麼?當然他們認為他們都掉頭了,但因為你在特高的地方,你會認為他們「穿過」了對方。換言之,這與他們相互穿過並沒有任何區別。

然後我們就可以把士兵分開了。比方說有乙個士兵在位置3,開始時向右,那麼一定有乙個士兵在兩秒後在位置5。雖然這兩個傢伙可能不是同乙個人,但由於士兵都是相同的,我們可以認為他們相同。

那麼我們就可以把所有士兵分開。首先,我們把他們乙個個讀進去。然後,對於每乙個士兵,他有向左和向右兩種選擇。設士兵在位置p,如果向左,需要p時間單位;向右,需要l-p+1個。分別取max和min,更新答案即可。

等於說,不用去考慮士兵回頭的情況,相當於他們是透明的,直接穿過去即可。

**

#include

#include

#include

#include

using

namespace std;

intmain()

printf

("%d %d"

, minv, maxv)

;return0;

}

洛谷 P1007 獨木橋題解

戰爭已經進入到緊要時間。你是運輸小隊長,正在率領運輸部隊向前線運送物資。運輸任務像做題一樣的無聊。你希望找些刺激,於是命令你的士兵們到前方的一座獨木橋上欣賞風景,而你留在橋下欣賞士兵們。士兵們十分憤怒,因為這座獨木橋十分狹窄,只能容納1個人通過。假如有2個人相向而行在橋上相遇,那麼他們2個人將無妨繞...

洛谷題解P1007獨木橋

戰爭已經進入到緊要時間。你是運輸小隊長,正在率領運輸部隊向前線運送物資。運輸任務像做題一樣的無聊。你希望找些刺激,於是命令你的士兵們到前方的一座獨木橋上欣賞風景,而你留在橋下欣賞士兵們。士兵們十分憤怒,因為這座獨木橋十分狹窄,只能容納1個人通過。假如有2個人相向而行在橋上相遇,那麼他們2個人將無妨繞...

洛谷 P1007 獨木橋

題目背景 戰爭已經進入到緊要時間。你是運輸小隊長,正在率領運輸部隊向前線運送物資。運輸任務像做題一樣的無聊。你希望找些刺激,於是命令你的士兵們到前方的一座獨木橋上欣賞風景,而你留在橋下欣賞士兵們。士兵們十分憤怒,因為這座獨木橋十分狹窄,只能容納乙個人通過。假如有兩個人相向而行在橋上相遇,那麼他們兩個...