搜索深度優(yōu)先剪枝ppt課件.ppt

搜索深度優(yōu)先剪枝ppt課件.ppt

ID:60858260

大?。?31.00 KB

頁數(shù):51頁

時間:2020-12-24

搜索深度優(yōu)先剪枝ppt課件.ppt_第1頁
搜索深度優(yōu)先剪枝ppt課件.ppt_第2頁
搜索深度優(yōu)先剪枝ppt課件.ppt_第3頁
搜索深度優(yōu)先剪枝ppt課件.ppt_第4頁
搜索深度優(yōu)先剪枝ppt課件.ppt_第5頁
資源描述:

《搜索深度優(yōu)先剪枝ppt課件.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、教學(xué)目標深度優(yōu)先搜索的一般步驟如何剪枝如何編程內(nèi)容要點復(fù)雜問題如何切入化簡思維深度優(yōu)先搜索的一般步驟寫好遞歸程序1任務(wù):登山人選問題攀登一座高山,假定勻速前進,從山腳登到山頂需走N天,下山也需N天。山上沒有水和食品,給養(yǎng)要靠登山隊員攜帶,而每個隊員所攜帶的給養(yǎng)量要少于他登頂再返回山腳所消耗的給養(yǎng)量。因此,一定要組成一個登山隊,在多人支援的情況下,保證有一個人登頂?,F(xiàn)在登山俱樂部有P個人待選,我們將P個人依次編號為k=1,2,…,P,令E[k]表示編號為k的人每日消耗的給養(yǎng)量,M[k]表示編號為k的人最多

2、可攜帶的給養(yǎng)量。登山計劃要求所組成的登山隊所有成員同時出發(fā),其中一些人分別在啟程若干天后返回,最終保證出發(fā)N天后至少有一人登頂,出發(fā)2N天后所有人都已返回山腳,無人滯留山上。2編程要求:用鍵盤輸入天數(shù)N(N<10)、俱樂部人數(shù)P(P<10)之后,依次輸入E[k]和M[k],k=1,2,…,P,分別輸出兩個登山組隊計劃,計劃1,要求參加登山的人數(shù)最少,在滿足這一條件之下消耗的總給養(yǎng)量最少。計劃2,要求消耗的總給養(yǎng)量最少。輸出的內(nèi)容是:有多少隊員參加登山,消耗的總給養(yǎng)量,在出發(fā)時每人分別攜帶多少給養(yǎng),每人分

3、別在出發(fā)幾天后返回(幾天后開始下山)。題目數(shù)據(jù)保證有解?!据斎敫袷健康?行為2個小于10的整數(shù)N和P,兩個整數(shù)之間有一個空格。第2行為P個整數(shù),分別是E[1],E[2],…,E[P],相鄰兩整數(shù)之間有一個空格。第3行為P個整數(shù),分別是M[1],M[2],…,M[P],相鄰兩整數(shù)之間有一個空格。3【輸出格式】第1行到第3行為計劃1的內(nèi)容,第1行有兩個整數(shù),前者是參加登山人數(shù)Q1,后者是消耗的總給養(yǎng)量。第2行是Q1個整數(shù),表示Q1個人在出發(fā)時每人攜帶的給養(yǎng)。第3行是Q1個整數(shù),表示Q1個人中的每個人在出發(fā)幾

4、天后返回。第4行到第6行為計劃2的內(nèi)容,第4行有兩個整數(shù),前者是參加登山人數(shù)Q2,后者是消耗的總給養(yǎng)量。第5行是Q2個整數(shù),表示Q2個人在出發(fā)時每人攜帶的給養(yǎng)。第6行是Q2個整數(shù),表示Q2個人中的每個人在出發(fā)幾天后返回。4【輸入樣例】661222337817182225【輸出樣例】24218246333818173631輸出表明:計劃1中有2個人組隊,分別攜帶18和24的給養(yǎng)量,分別在出發(fā)6天和3天之后返回;計劃2中有3個人組隊,分別攜帶18、17和3的給養(yǎng)量,分別在出發(fā)后6天、3天和1天之后返回。5《

5、登山人選》解題思路當(dāng)我們遇到一道難題時,先要想到:一、可不可以先從一個較簡單的情況分析起,把難度先降低一些,等從中總結(jié)出規(guī)律性的認識后,再回到原題的要求上來;二、能不能先從一個特殊的例子分析起,再推廣到一般情況。為了簡化問題,理出思路,可先將問題化簡為:每人所能攜帶的給養(yǎng)量相同,且每人每天消耗的給養(yǎng)量也相同,選擇一座不高的山,用一組人數(shù)不多的具體數(shù)據(jù)。比如有如下一組數(shù)據(jù):N=4從山腳到山頂需4天路程P=6登山俱樂部成員人數(shù)E=1每人每天消耗的給養(yǎng)量M=5每人最多攜帶的給養(yǎng)量6為了便于分析,圖1畫出了用上

6、述數(shù)據(jù)組隊登山的思路圖。4下返回高度11山3321222231323311上41424344山001號隊員2號隊員3號隊員4號隊員71#2#3#的支援點h1#2#的支援點1#的支援點432211430012345678t4人登山的高度與時間圖8在圖中,山高是以(路程)天為單位的。山頂?shù)母叨仁?天的路程。在1號隊員上下山的示意圖中,每個方塊代表一天的路程,1號隊員被選中為登頂者,用4天路程上山,再用4天路程下山。如果完全自食其力的話,1號隊員需要自帶8天的給養(yǎng),而題目限定的每人最多攜帶給養(yǎng)量M=5。因此,

7、沒有同伴支援的話,1號隊員是無法登頂?shù)?。?號登頂后能安全下山考慮,下山只有他一個人,只能自己攜帶給養(yǎng)。因此,在做計劃時讓1號隊員上山時,從山腳(高度0)到高度3使用同伴的給養(yǎng)。過了高度3之后再吃自帶的給養(yǎng)。在圖中小方塊內(nèi)所填的數(shù)字,表示在這一天的路程中由該號隊員供應(yīng)給養(yǎng)。從圖可見1號隊員上山的第一天(從高度0至高度1)由4號隊員提供給養(yǎng);上山的第2天(從高度1至高度2)由3號隊員提供給養(yǎng);上山的第3天(從高度2至高度3)由2號隊員提供給養(yǎng);上山的第4天(從高度3至高度4)吃自己的給養(yǎng);登頂成功之后,下

8、山的4天也均自食其力。從1號隊員登頂?shù)倪^程需要2號隊員支援的情況看,1號隊員需要在第3天吃2號隊員攜帶的給養(yǎng),這就意味著2號隊員要跟1號一起爬到高度3之后才能下山。9因此,2號隊員上山走3天,再下山走3天,自己要消耗6天的給養(yǎng),可是自己只能攜帶5天的給養(yǎng),當(dāng)然還需要3號支援他。可以這樣計劃:2號隊員上山時,第1天由4號隊員供給;第2天由3號隊員供給;第3天將1份給養(yǎng)支援給1號隊員,自己用掉1份給養(yǎng)。到了高度3之后,用還剩下的3份給養(yǎng)安全下山

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。